壳牌实现猜数字小游戏的方法

  

这篇文章给大家分享的是有关壳实现猜数字小游戏的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

壳实现猜数字游戏的具体代码如下

# !/bin/bash   #,猜数字编程游戏   #,系统随机生成一个数字,给这个数字定一个范围(1-60),让用户输入猜的数字,对输入进行判断,如果不符合要求,就给予高或低的提示。其他要求:   #,全部猜对后则给出猜对使用用的总次数。   #,根据猜的历史给出击败了百分之多少的已经猜过的用户。   #,并把关键的内容(高低以及数字部分)以特殊颜色提示用户。   ,   ,   #,生成一个1到60之间的随机数   number_range=$((随机% 60))   ,   登录(){   read 才能;-p  & # 39;请输入游戏昵称:,& # 39;名称   if 才能;[,-z “name"美元;,);   ,,,echo  -e “033 \ [1; 31 m 昵称不允许为空,033年\ [0 m"   ,,,exit  1   fi才能   }   ,   ,   #,检查输入是否合法,含有非数字,为空,大于60小于1都属于非法行为   check_number () {   if 才能;[,-z “number"美元;,-o 美元(echo “number"美元;| egrep  -o  & # 39; [^ 0 - 9] & # 39; | wc  - l), -gt  1,);   ,,,echo  -e “033 \ [1; 31 m 请不要输入非数字字符,033年\ [0 m"   ,才能继续   elif 才能;[,-z “number"美元;,);   ,,,echo  -e “033 \ [1; 32 m 请不要输入空字符,033年\ [0 m"   其他的才能   ,,,if  [,“number"美元,-lt  1, -o “number"美元;,-gt  60,);   ,,,,,echo  -e “033 \ [1; 31 m 请输入一个1到60之间的数字,033年\ [0 m"   ,,,,,继续   ,,fi   fi才能   }   ,   #,提示输入和正确答案大小比对   提示(){   if 才能;[,“number"美元,-lt “number_range"美元;,);   ,,,echo  -e “033 \ [1; 34 m 你猜的数字太小了,033年\ [0 m"   elif 才能;[,“number"美元,-gt “number_range"美元;,);   ,,,echo  -e “033 \ [1; 35 m 你猜的数字太大了,033年\ [0 m"   elif 才能;[,“number"美元,-eq “number_range"美元;,);   ,,,echo  -e “033 \ [1; 36 m 恭喜你猜对了,033年\ [0 m"   ,,,echo  -e “033 \ [1; 31 m 一共使用了美元计算次机会,033年\ [0 m"   ,,,echo “name 美元;count"美元;,在祝辞Game_history   ,,check_beat   fi才能   }   ,   #,判断击败了多少历史玩家   check_beat () {   beat_count才能=0   for 才能;history 美元拷贝(awk  & # 39; {print  $ 2} & # 39;, Game_history)   ,做的   ,,,总=$ (expr  $ (cat  Game_history | wc  - l),安康;1)   ,,,if  [,“total"美元,-eq  0,);   ,,,,,echo  -e “033 \ [1; 32 m 您是本游戏的第一位用户哦,033年\ [0 m"   ,,,,,exit  1   ,,,else    ,,,,,if  [,“count"美元,-lt “history"美元;,);   ,,,,,,,let  beat_count + +   fi。才能   ,,fi   ,完成   echo 才能| awk  -v  beat_count=$ beat_count  -v 总=$ total  & # 39; {printf “您一共击败了% .2f % %的历史玩家\ n", beat_count/总* 100}& # 39;   exit 才能;1   }   ,   #,主菜单   菜单(){   ,登录   ,数=0   while 才能:   ,做的   ,,,read  -p  & # 39;请输入一个1到60之间的数字:,& # 39;数量   ,,,let  + +   ,,check_number   ,,,提示   ,完成   }   菜单

小编再为大家分享一段:壳牌实现猜数字游戏的代码

#/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   #,,祝辞,File 名称:guessgame.sh   #,,祝辞,作者:投入   #,,在邮件:,2550702985 @qq.com   #,,祝辞,Created 时间:,2017 - 03 - 22日01:57   #,,祝辞,Last 修改:,2017 - 03 - 22日01:57   randNum=$ (date  + % s % N)   let  luckNum=$ {randNum: 0-1:1}   echo  luckNum美元   let  num=luckNum + 1   while [,美元luckNum  -ne  num 美元;);   read 才能;- p # 39; Please  input  a  num:, & # 39;, num    # expr 才能当num为0结果非0,故不能作为数字判断的标准   #,才能expr  num 美元;+,0,,祝辞,/dev/null  | | {, echo  & # 39;请输入数字& # 39;;exit  2,,}   echo 才能;num 美元;| grep  -E  & # 39; ^[[数位:]]+ $ & # 39;,,祝辞,/dev/null  | | {, echo  & # 39;请输入数字   & # 39;;exit  2;},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,   if 才能;[,luckNum 美元;-eq  num 美元;);   ,,,echo  & # 39;祝贺# 39;;   null   null   null   null   null   null   null

壳牌实现猜数字小游戏的方法