猜数字shell脚本

回复 收藏
写一个猜数字脚本,当用户输入的数字和预设数字(随机生成一个小于100的数字)一样时,直接退出,否则让用户一直输入,并且提示用户的数字比预设数字大或者小。


答案
{{{密码回复可见}}}


2015-08-07 09:55 1 条评论 举报
已邀请:
0

chenlei82486708

赞同来自:

学习
0

dongteng

赞同来自:

学习
0

J_C

赞同来自:

对答案
0

dessler

赞同来自:

  1. #!/bin/bash
  2. #写一个猜数字脚本,当用户输入的数字和预设数字(随机生成一个小于100的数字)一样时,
  3. #直接退出,否则让用户一直输入,并且提示用户的数字比预设数字大或者小。
  4. num=`echo $((RANDOM%100+1))`
  5. while :
  6. do
  7. read -p "请输入一个1-100的数字": n
  8. n1=`echo $n |sed 's/[0-9]//g'`
  9. if [ -n "$n1" -o -z "$n" ]
  10. then
  11.         echo "你输入错误,请重新输入"
  12.         elif [ $n == $num ]
  13.         then
  14.         echo "恭喜你,猜对了"
  15.         exit 11
  16.         elif [ $n -gt $num ]
  17.         then
  18.         echo "你猜错了,你的数字是:$n 大于目标数"
  19.         else [ $n -lt $num ]
  20.         echo "你猜错了,你的数字是:$n 小于于目标数"
  21.         fi
  22. fi
  23. done
0

ryanlin

赞同来自:

学习
0

陶小川 - less is more

赞同来自:

  1. random_num=`declare -i num=100*$RANDOM/32767;echo $num`

  2. read -p "请输入你心中的那个数(1-100): " user_num

  3. while true;
  4. do
  5.     if [[ user_num -eq random_num  ]];then
  6.     |   echo -e "恭喜你,还是你最懂我的心\n"
  7.     |   break
  8.     fi  
  9.     [[ user_num -gt random_num  ]] && echo -e "你输入的数字比预设数字大\n" || echo -e ">你输入的数字比预设数字小\n"

  10.     read -p "请输入你心中的那个数(1-100): " user_num
  11. done
0

尹玉龙

赞同来自:

先看看
0

zhangyanlong

赞同来自:

111
0

563349612

赞同来自:

学习
0

awen

赞同来自:

看看
0

kw是id

赞同来自:

预设数字(随机生成一个小于100的数字)    这个需求不会写

#!/bin/bash
a=`echo $RANDOM`
while :
do
  read -p "please input a number: " n
  if [ $a -eq $n ]
  then
     exit
  elif [ $[$a0] -gt $n ]
  then
     echo "the number you input is smaller than default number"
     continue
  elif [ $[$a0] -lt $n ]
  then
     echo "the number you input is bigger than default number"
     continue
  fi
done


0

王斌

赞同来自:

#!/bin/bash

#Auth: Cityzen Wang

#Script: Guess number

n=15

while :

do

    read -p "please input a number: " m

    a=`echo $m | sed 's/[0-9]//g'`

    if [ -n "$a" ];then

        echo "numbers only please"

    else

        if [ $m -eq $n ];then

            echo "Correct"

            continue

        elif [ $m -lt $n ];then

            echo "Input a larger one"

        else

            echo "Input a smaller one please"

        fi

    fi

done

echo "test"

这里的 echo 是配合 continue 使用,把 continue 编程 break,exit 测试一下,查看三者的区别。

0

liaochao1991

赞同来自:

6

0

杨银根

赞同来自:

生成小于100的随机数 不会

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: