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 "砸蛋"
  • 相关阅读:
    算法(5)
    字典
    算法(4)
    AD域设置
    css两句话搞定漂亮表格样式
    Dev控件用法 aspxTreeList 无刷新 aspxGridView 数据
    ASP.Net 验证视图状态 MAC 失败
    C# 客服端上传文件与服务器器端接收 (简单代码)
    Linq to SQL 类型的对象图包含循环,如果禁用引用跟踪,择无法对其进行序列化。
    C# 导出 Excel 数字列出现‘0’的解决办法
  • 原文地址:https://www.cnblogs.com/golinux/p/10831061.html
Copyright © 2011-2022 走看看