Shell之九九乘法表、等腰三角形

Shell之九九乘法表、等腰三角形

一:九九乘法表

[root@localhost ~]# vim jiujiu.sh
#!/bin/bash
for ((i=1;i<=9;i++))
do
        for  ((a=1;a<=i;a++))
        do
        echo -n ${i}*${a}="`expr $i \* $a` "
        done
        echo
done
[root@localhost ~]# sh jiujiu.sh 
1*1=1 
2*1=2 2*2=4 
3*1=3 3*2=6 3*3=9 
4*1=4 4*2=8 4*3=12 4*4=16 
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 

二:等腰三角形

方法一
[root@localhost ~]# vim dengyao.sh
#!/bin/bash
#定义最后一行的*
read -p "请输入多少个*:" sum
#定义每一行的内容
for ((i=$sum;i>0;i--))
do
#定义每一行空格数
        for  ((j=$i;j>0;j--))
        do
#不空行输出
        echo -n " "
        done
#定义每一行的*
         for  ((k=1;k<=`expr $sum - $i + 1`;k++))
         do
         echo -n "* "
         done
echo
done
[root@localhost ~]# sh dengyao.sh 
请输入多少个*6
      * 
     * * 
    * * * 
   * * * * 
  * * * * * 
 * * * * * * 
[root@localhost ~]# sh dengyao.sh 
请输入多少个*3
   * 
  * * 
 * * * 
[root@localhost ~]# sh dengyao.sh 
请输入多少个*10
          * 
         * * 
        * * * 
       * * * * 
      * * * * * 
     * * * * * * 
    * * * * * * * 
   * * * * * * * * 
  * * * * * * * * * 
方法二
#!/bin/bash
#等腰三角形
#定义三角形的行数
read -p "行数:" hang
#定义每一行的内容
for ((i=1;i<=$hang;i++))
do
        #先输出空格数m
        for ((m=1;m<=`expr $hang-$i`;m++))
        do
        #不换行输出
        echo -n " "
        done
        #输出个“*”n
        for ((n=1;n<=$i;n++))
        do
        echo -n "* "
        done
echo
done

猜你喜欢

转载自blog.csdn.net/m0_47219942/article/details/107460925