首先是shell
等边三角形
[root@hxy my_script]# sh ff.sh num:6************************* *********** [root@hxy my_script]# cat ff.sh #!/bin/bash ######################################################################### # File Name: ff.sh # Author: huxianyong # mail: hxy123@163.com # Created Time: 2017年06月07日 星期三 16时41分14秒 #########################################################################read -p "num:" num for((i=1;i<=$num;i++)) dofor((j=$num;j>i;j--))doecho -e " \c"donefor((l=1;l<=i;l++))doecho -e "*\c"donefor((r=1;r<i;r++))doecho -e "*\c"doneecho done或者read -p "num:" num for((i=1;i<=$num;i++)) dofor((j=$num;j>i;j--))doecho -e " \c"donefor((l=1;l<=2*i-1;l++))doecho -e "*\c"doneecho done
[root@hxy my_script]# sh ff.sh num:6** ** * ** * * ** * * * * * * * * * * [root@hxy my_script]# cat ff.sh #!/bin/bash ######################################################################### # File Name: ff.sh # Author: huxianyong # mail: hxy123@163.com # Created Time: 2017年06月07日 星期三 16时41分14秒 #########################################################################read -p "num:" num for((i=1;i<=$num;i++)) dofor((j=$num;j>i;j--))doecho -e " \c"donefor((l=1;l<=i;l++))doecho -e "* \c"doneecho done
等腰直角三角形
[root@hxy my_script]# sh ff.sh num:5 * *** ***** ******* *********[root@hxy my_script]# cat ff.sh #!/bin/bash ######################################################################### # File Name: ff.sh # Author: huxianyong # mail: hxy123@163.com # Created Time: 2017年06月07日 星期三 16时41分14秒 #########################################################################read -p "num:" num for((i=1;i<=$num;i++)) dofor((l=1;l<=2*i-1;l++))doecho -e "*\c"doneecho done
菱形
for ((i = 1; i < 12; i++))doif [[ $i -le 6 ]]; thenfor ((j = $((12-i)); j > i; j--))doecho -n " ";donefor ((m = 1; m <= $((2*i-1)); m++))do#echo -n "$i "echo -n "* "doneecho ""elif [[ $i -gt 6 ]]; thenn=$((12-i))for ((j = $((12-n)); j > n; j--))doecho -n " ";donefor ((m = 1; m <= $((2*n-1)); m++))do#echo -n "$i "echo -n "* "doneecho ""fidone
其他的形状大同小异了
python打印菱形
*********
****************s = '*'
for i in range(1, 8, 2):print((s*i).center(7))
for i in reversed(range(1, 6, 2)):print((s*i).center(7))
利用python打印空心正方形
#encoding=utf-8
num = input("please input you number: ")
b=c=int(num)
print(" * " * int(num))
while 0 < c - 2:c -=1print(" * " + " "*(b - 2) + " * ")print(" * " * int(num))
转载于:https://blog.51cto.com/853056088/1933243