題目
要實現的效果如下:
Shell腳本文件名爲sq,執行時接受2-10範圍內的一個整數作爲輸入參數,在屏幕上用+號、@號和 &號畫出以給定參數爲邊長的正方形。
例如:輸入命令$ sq 4並回車,則屏幕上會繪製如下的正方形,(注:其中第2、3行上的&符號之間有兩個空格)
@++@
& &
& &
@++@
代碼
shell代碼如下:
#/bin/bash
read a
if [[ a -le 10 && a -ge 2 ]]
then
for((i=0;i<$a;i++))
{
b=$a-1;
if [[ $i -eq 0 || $i -eq b ]]
then
echo -n "@"
for((j=0;j<$a-2;j++))
{
echo -n "+"
}
echo "@"
else
echo -n "&"
for((j=0;j<$a-2;j++))
{
echo -n " "
}
echo "&"
fi
}
else
echo "Invalid input!"
fi
運行效果
運行效果如下: