zoukankan      html  css  js  c++  java
  • shell的随机数

    bash默认有一个$RANDOM的变量, 默认范围是0~32767.

    使用set|grep RANDOM查看上一次产生的随机数

    [root@server shell02]# echo $RANDOM
    15832
    [root@server shell02]# set |grep RANDOM
    RANDOM=15832
    [root@server shell02]#

    产生0~1之间的随机数

    [root@server shell02]# echo $[$RANDOM%2]
    0
    [root@server shell02]# echo $[$RANDOM%2]
    0
    [root@server shell02]# echo $[$RANDOM%2]
    1

    产生0~2的随机数

    [root@server shell02]# echo $[$RANDOM%3]
    1
    [root@server shell02]# echo $[$RANDOM%3]
    2
    [root@server shell02]# echo $[$RANDOM%3]
    1
    [root@server shell02]# echo $[$RANDOM%3]
    2
    [root@server shell02]#

    产生1~2之间的随机数

    [root@server shell02]# echo $[$RANDOM%2+1]
    1
    [root@server shell02]# echo $[$RANDOM%2+1]
    2
    [root@server shell02]# echo $[$RANDOM%2+1]
    1
    [root@server shell02]# echo $[$RANDOM%2+1]
    2

    产生50~100之间的随机数

    [root@server shell02]# echo $[$RANDOM%51+50]
    63
    [root@server shell02]# echo $[$RANDOM%51+50]
    90
    [root@server shell02]# echo $[$RANDOM%51+50]
    77
    [root@server shell02]# echo $[$RANDOM%51+50]
    88

    产生三位数的随机数

    [root@server shell02]# echo $[$RANDOM%900+100]
    713
    [root@server shell02]# echo $[$RANDOM%900+100]
    686
    [root@server shell02]# echo $[$RANDOM%900+100]
    474
    [root@server shell02]# echo $[$RANDOM%900+100]
    202

    总结一下

    产生一个n~m范围内的随机数

    使用$RANDOM取余m-n+1,之后加上n就可以了

     猜数字游戏

    #!/bin/bash
    
    echo "猜一个1-100的整数,猜对砸蛋:" 
    
    num=$[$RANDOM%100+1]
    
    while true
    do
        read -p "请猜:" gnum
        if [ $gnum -gt $num ];then
            echo "大了"
        elif [ $gnum -lt $num ];then
            echo "小了"
        else    
            echo "对了"
            break
        fi
    done
    
    echo "砸蛋"
  • 相关阅读:
    JAVA课程设计+五子棋游戏
    201521123059 《Java程序设计》第十四周学习总结
    201521123059 《Java程序设计》第十三周学习总结
    软工个人总结
    alpha阶段个人总结
    centos 下构建lamp环境
    软工15作业3——案例分析
    结对编程
    201521123058 软工阅读第二次作业
    软工阅读作业1(201521123058 李绍乐)
  • 原文地址:https://www.cnblogs.com/golinux/p/10831061.html
Copyright © 2011-2022 走看看