文章目录

  • 第一种
  • 第二种
  • 总结

第一种

 #!/bin/bashread -p "请输入菱形长度:" len
for i in `seq 1 $len`  #输出菱形上半部分
dofor ((j=$len-1;j>=$i;j--))doecho -n " "   #打印空格对齐图案donefor((m=1;m<=$i;m++))doecho -n "* "  #打印*号doneechodonefor i in `seq 1 $len`  #输出菱形的下半部分,下半部分要比上半部分少一行
dofor((j=1;j<=$i;j++)) doecho -n " "   #打印空格对齐图案donefor((n=$len-1;n>=$i;n--))doecho -n "* "  #打印*号doneecho
done

输出结果如下图所示:

第二种

#!/bin/bashread -p "请输入菱形长度:" len  #输出菱形上半部分for i in `seq 1 $len`dofor ((j=$len-1;j>=$i;j--))doecho -n " "  #打印空格对齐图案donelet num=2*i-1for m in `seq 1 $num`doecho -n "*"  #打印*号doneecho donefor i in `seq 1 $len`  #输出菱形的下半部分,下半部分要比上半部分少一行dofor ((j=1;j<=$i;j++))doecho -n " "  #打印空格对齐图案donelet num="2*(len-i)-1"for n in `seq 1 $num`doecho -n "*"  #打印*号doneechodone

输出结果如下图所示:

总结

  • 在本次的两个案例中,所用的算法的是一样的,只是表现形式不太一样。要想把这个图形设计工整,就是要处理好空格与※之间的关系,从而通过循环求得,并且分成两部分赖考虑:在第一部分中,当我们输入len之后,第一行是由len-1个,和一个※号,组成随着行数的增加,空格随之减少,二※号不停增加。从而我们就可以得到两个循环取值范围。for ((j=len−1;j>=len-1;j>=len−1;j>=i;j–))表示空格的循环,for((m=1;m<=i;m++))表示※号的循环。在第二部分中,只有len−1行,随着行数的减少,空格不断增加,而※号却在不停的减少。从而我又可以得到两者的循环的取值范围。for((j=1;j<=i;m++))表示※号的循环。在第二部分中,只有len-1行,随着行数的减少,空格不断增加,而※号却在不停的减少。从而我又可以得到两者的循环的取值范围。for((j=1;j<=i;m++))表示※号的循环。在第二部分中,只有len−1行,随着行数的减少,空格不断增加,而※号却在不停的减少。从而我又可以得到两者的循环的取值范围。for((j=1;j<=i;j++))表示空格的循环;for((n=len−1;n>=len-1;n>=len−1;n>=i;n–))表示※号的循环。

shell编程之打印菱形图案相关推荐

  1. 习题4-9 打印菱形图案 (15 分)

    习题4-9 打印菱形图案 (15 分) 本题要求编写程序,打印一个高度为n的.由"*"组成的正菱形图案. 输入格式: 输入在一行中给出一个正的奇数n. 输出格式: 输出由n行星号& ...

  2. SCAU 1035 打印菱形图案

    1035 打印菱形图案 时间限制:1000MS 代码长度限制:10KB 提交次数:4874 通过次数:3064 题型: 编程题 语言: G++;GCC Description 由键盘输入正数n(n&l ...

  3. 花式打印菱形图案!!

    (一).首先我们先来看最简单的打印5行5列 ***** ***** ***** ***** ***** 具体代码如下: /*** 双循环打印菱形图案* * A ** *** BBB * ** **** ...

  4. java打印菱形图案_java打印出菱形图案实例详解

    第一步:首先对图像进行解析 想要打印该图形必须要进行多层循环嵌套,分两个部分进行打印. 第一部分为上半部分前四行,他们是递增的关系,后半部分后三行为递减关系,由此可以得出我们需要写两个打的循环.并且由 ...

  5. php编辑菱形图案代码,打印菱形图案 (15 分)

    打印菱形图案 (15 分) 本题要求编写程序,打印一个高度为n的.由"*"组成的正菱形图案. 输入格式: 输入在一行中给出一个正的奇数n. 输出格式: 输出由n行星号"* ...

  6. 打印菱形图案的两种方法

    打印菱形图案 本题要求编写程序,打印一个高度为n的.由"*"组成的正菱形图案. 输入格式: 输入在一行中给出一个正的奇数n. 输出格式: 输出由n行星号"*"组 ...

  7. (Java) 实现打印菱形图案

    Java 实现打印菱形图案 一.直接看效果图: 随便输入一个数字,然后会生成一个宽度为该数字的菱形: 二.首先先来看下,菱形的结构,由符号和空格组成,所以就用for循环来实现这样的效果,然后来看代码: ...

  8. PTA 7-12 打印菱形图案

    7-12 打印菱形图案 (15分) 本题要求编写程序,打印一个高度为n的.由"*"组成的正菱形图案. 输入格式: 输入在一行中给出一个正的奇数n. 输出格式: 输出由n行星号&qu ...

  9. 【C】 打印菱形图案

    使用VS2019 ISO C++14 标准 (/std:c++14) 打印菱形图案 打印出如下图案(菱形). ********* **************** 代码: //打印菱形图案 #incl ...

最新文章

  1. Sql Server统计报表案例
  2. NC:自体免疫水泡皮肤病中鉴定基因与微生物组互作(微生物组关联分析MWAS)
  3. SQL 存储过程 解析XML
  4. poj2002 STL set
  5. EJB3与Spring的集成
  6. linux 内核空间占用cpu百分比过高,linux下分析java程序占用CPU、内存过高
  7. 投票彰显电信合约机诺基亚Lumia 800C受热捧
  8. 程序员找不到对象是因为还没遇到一个有远见的丈母娘
  9. 【渝粤题库】陕西师范大学164205 ERP原理及应用 作业(专升本)
  10. 动态滤波网络论文解读
  11. Android EditText 赋值与取值
  12. 2007年11月网络工程师考试试题答案
  13. 另一个串口verilog 代码
  14. shell--4、Shell 数组
  15. 什么是WPF,对WPF的认识
  16. 【Windows7】win7启动 报错 AutoIt错误,不能打开脚本文件
  17. 磁盘必须经过初始化,逻辑磁盘管理器才能访问——笔记本硬盘作为移动硬盘使用时遇到的问题...
  18. 关于oracle预言机
  19. OpenCV中HSV与PS中HSB对应关系
  20. 谷歌、亚马逊全面开火,一场前所未有的AI芯片大战

热门文章

  1. 睡眠即醒 蓝牙_众人皆睡你独醒?Bose遮噪睡眠耳塞用黑科技助你酣睡!
  2. 【2023推广教程】软文发稿推广渠道直播带货运营方法
  3. springboot全局异常拦截
  4. 台铁普悠玛出轨事故赔偿金提高2成 家属不接受
  5. 自学Java笔记1,2021-3-22更
  6. 计算机岗试题及答案,信息技术岗试卷附答案.doc
  7. Altium Designer v22.7.1.60 PCB板、电路原理图设计工具
  8. p2p开户模块功能实现
  9. 自媒体中短视频流量主广告小程序开发
  10. Mac os x的发展