添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
温柔的烤红薯  ·  oracle to_date format ...·  1 年前    · 
销魂的自行车  ·  Java Agent + ...·  1 年前    · 
绅士的牛肉面  ·  第三十课 ...·  1 年前    · 

图形7:倒等腰三角形

方法一:

先输出一个空格直角三角形,再输出一个星星填充的反直角三角形,最后输出一个星星填充的倒直角三角形。

#!/bin/bash
 #倒等腰三角形
 #先输出一个空格直角三角形
 #再输出一个星星填充的反直角三角形
 #最后输出一个星星填充的倒直角三角形
 for a in {1..9}
 #输出一个空格填充的直角三角形
    for b in `seq 1 $a`
       echo -n " "
 #再输出一个星星填充的反直角三角形
    for c in `seq $a 9`
       echo -n "*"
 #最后输出一个星星填充的倒直角三角形
    for d in `seq $a 8`
       echo -n "*"
 #用于换行,echo默认打印换行符
[root@yuji ~]# bash hua7.sh
 *****************
  ***************
   *************
    ***********
     *********
      *******
       *****
复制代码


image


image


方法二:

#!/bin/bash
 #倒等腰三角形
 #a从9开始
 #先输出一个空格直角三角形
 #之后每行的星星个数=2a-1
 for a in {9..1}
 #输出一个空格填充的直角三角形
    for ((b=9;b>=a;b--))
       echo -n " "
 #每行的星星个数=2a-1
    i=$[(a*2)-1]
    for j in `seq $i`
       echo -n "*"
 #用于换行,echo默认打印换行符
复制代码


image


image


图形8:菱形(正等腰三角形+倒等腰三角形)

先输出一个正等腰三角形(9行);再输出一个倒等腰三角形(8行)。

#!/bin/bash
 #正等腰三角形+倒等腰三角形
 #正等腰三角形,一共9行
 for a in {1..9}
 #输出一个空格填充的倒直角三角形
    for ((b=9;b>=a;b--))
       echo -n " "
 #每行的星星个数=2a-1
    i=$[(a*2)-1]
    for j in `seq $i`
       echo -n "*"
 #倒等腰三角形,一共8行
 for a in {8..1}
    for ((b=9;b>=a;b--))
       echo -n " "
 #每行的星星个数=2a-1
    i=$[(a*2)-1]
    for j in `seq $i`
       echo -n "*"
 [root@yuji ~]# bash hua8.sh
       *****
      *******
     *********
    ***********
   *************
  ***************
 *****************
  ***************
   *************
    ***********
     *********
      *******
       *****
复制代码


image


image


图形9:平行四边形

方法一:

先输出一个空格填充的直角三角形,之后每行输出相同个数的星星。

#!/bin/bash
 #平行四边形
 #先输出一个空格填充的直角三角形
 #之后每行输出相同个数的星星
 for a in {1..9}
 #输出一个空格直角三角形
    for b in `seq 1 $a`
       echo -n " "
 #每行输出9个星星
    for c in {1..9}
       echo -n "*"
 [root@yuji ~]# bash hua9.sh
 *********
  *********
   *********
    *********
     *********
      *********
       *********
        *********
         *********
复制代码


image


image


方法二:

先输出一个空格填充的倒直角三角形,之后每行输出相同个数的星星。

#!/bin/bash
 #平行四边形
 #先输出一个空格填充的直角三角形
 #之后每行输出相同个数的星星
 for a in {1..9}
 #输出一个空格直角三角形
    for b in `seq $a 9`
       echo -n " "
 #每行输出9个星星
    for c in {1..9}
       echo -n "*"
[root@yuji ~]# bash hua09.sh
         *********
        *********
       *********
      *********
     *********
    *********
   *********
  *********
 *********
复制代码


image


image


图形10:直角梯形

将平行四边形左边的空格直角三角形,变成星星直角三角形。

#!/bin/bash
 #直角梯形
 #使用"直角三角形+平行四边形"的方式
 for a in {1..9}
 #输出一个星星填充的直角三角形
    for b in `seq 1 $a`
       echo -n "*"
 #每行输出9个星星
    for c in {1..9}
       echo -n "*"
[root@yuji ~]# bash hua10.sh
**********
***********
************
*************
**************
***************
****************
*****************
******************
复制代码


image


image


图形11:等腰梯形

先输出一个空格填充的倒直角三角形;之后输出每行的星星,每行的星星个数=n+行数×2(n为任意正整数,每一行的星星个数都比上一行多2个)。

#!/bin/bash
 #等腰梯形
 #先输出一个空格填充的倒直角三角形(9行)
 #每行的星星个数=9+行数×2
 for a in {1..9}
 #输出一个空格填充的倒直角三角形
    for ((b=9;b>=a;b--))
       echo -n " "
 #每行输出(9+2a)个星星
    i=$[9+a*2]
    for ((c=1;c<=i;c++))
       echo -n "*"
 [root@yuji ~]# bash hua11.sh
         ***********
        *************
       ***************
      *****************
     *******************
    *********************
   ***********************
  *************************
 ***************************