SHELL编程猜数字游戏。(高手请绕行)

猜数字游戏。首先让系统随机生成一个数字,给这个数字定一个范围(1-60),让用户输入猜的数字,对输入进行判断,如果不符合要求,就给予高或低的提示,猜对后则给出猜对用的次数,并根据猜的历史给出击败了百分之多少的已经猜过的用户,并把关键的内容以特殊颜色提示用户。

最终实现效果如下:

SHELL编程猜数字游戏。(高手请绕行)

公布代码啦:

[root@web01 scripts]# cat 7.sh 
#!/bin/bash
i="$((RANDOM%60))"
count=0
Beat(){
   a=0
   b=0
   while read line
   do
       if [ $line -ge $count ]
       then
           ((a++))
       else
           ((b++))
       fi
   done</tmp/count.log
   echo $a $((a+b))|awk '{print ($1/$2)*100"%"}'
}
while true
do
    read -p "请输入1-60数字: " num
    [ $num -gt 60 ]&&{
    echo "是不是傻,没看到让你输1-60的数字吗???"
    continue
    }
    [ $num -lt 1 ] &&{
    echo "是不是傻,没看到让你输1-60的数字吗???"
    continue
    }   
    expr 10 + $num &>/dev/null
    [ $? -ne 0 ] &&{
    echo "请输入数字,别瞎输"
    continue
    }
    let count+=1
    if [ $num -gt $i ]
    then
        echo -e  兄弟,输"\033[41;37m高\033[0m"了,Come on!
    elif [ $num -eq $i ] 
    then
        if [ $count -le 3 ]
        then
            echo -e  "\033[43;32m牛逼啊,${count}次就对了,击败了全国`Beat`的人,你绝对能出任CEO,赢取白富美,走上人生巅峰\033[0m"
        else
            echo "用了$count 次才答对,击败了全国`Beat`的人"
        fi
        echo "$count" >>/tmp/count.log
            exit 0
    else
        echo -e  兄弟,输"\033[44;37m低\033[0m"了,Come on!
    fi
done

转载于:https://blog.51cto.com/13721071/2156653

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值