学习shell的时候将学习的部分内容整合了一下,写了个猜数字的小游戏,以下是代码,如果有问题欢迎大家指正
在这里使用系统变量$RADNUM产生随机数,$RANDOM的范围在[0,32767]这里以取模的形式控制需要生成的随机数的范围
#!/bin/bash
# 循环执行游戏
flag="Y"
while [ $flag = "Y" ]
do
echo "======* 欢迎玩家登录本游戏 *======"
ranNum=$(($RANDOM%50+1))
gNum=5
echo "随机数的范围在 1-50 之间"
echo "请输入要猜的数字:"
read gusNum
flag3="Y"
#循环输入猜的数字
while [ $flag3 = "Y" ]
do
# 判断数字大小
if [ $gusNum -gt $ranNum ]
then
echo "猜大了!!!"
echo "请重新输入要猜的数字:"
read gusNum
elif [ $gusNum -lt $ranNum ]
then
echo "猜小了!!!"
echo "请重新输入要猜的数字:"
read gusNum
else
echo "恭喜猜对了!!!"
echo "本局游戏结束!!!"
let "flag3=N"
fi
done
echo "======* 是否开始新的游戏 Y or N *======"
read flag2
if [ $flag2 = 'N' ]
then
let "flag=N"
echo "======* 退出游戏成功,恭候玩家下次登录游戏 *======"
fi
done
测试结果:
======* 欢迎玩家登录本游戏 *======
随机数的范围在 1-50 之间
请输入要猜的数字:
22
猜大了!!!
请重新输入要猜的数字:
12
猜小了!!!
请重新输入要猜的数字:
15
猜大了!!!
请重新输入要猜的数字:
13
猜小了!!!
请重新输入要猜的数字:
14
恭喜猜对了!!!
本局游戏结束!!!
======* 是否开始新的游戏 Y or N *======
N
======* 退出游戏成功,恭候玩家下次登录游戏 *======
以上便是以shell实现的猜数字的小游戏,如有问题请大家帮忙指正,谢谢