码迷,mamicode.com
首页 > 系统相关 > 详细

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

时间:2018-08-09 10:58:51      阅读:600      评论:0      收藏:0      [点我收藏+]

标签:.sh   img   proc   分享   random   color   one   rip   根据   

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

最终实现效果如下:

技术分享图片

公布代码啦:

[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

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

标签:.sh   img   proc   分享   random   color   one   rip   根据   

原文地址:http://blog.51cto.com/13721071/2156653

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!