【批处理DOS-CMD命令-汇总和小结】-利用cmd命令生成随机数、生成指定范围的随机数

2023-11-03

零、转载链接

bat脚本的基本命令语法 - 整合侠 - 博客园

一、cmd命令的随机数取值范围

%RANDOM% 系统变量只能返回 0 到 32767 之间的任意十进制数字。2的15次方等于32768,上面的0~32767实际就是15位二进制数的范围。

因此,利用cmd命令,生成的最大随机数就是32767,最小随机数就是-32767。

但我们一般不会在学习阶段去测试生成负的随机数,因为学会如何生成正随机数了,负随机数在正随机数的基础上加一个负号就能解决啦。

二、生成0-100以内的随机数

那么,如何获取100以内的随机数呢?

很简单,将%RANDOM%按100进行求余运算即可,见例子。
例:生成5个100以内的随机数

@echo off
  setlocal enabledelayedexpansion
  for /L %%i in (1 1 5) do (
     set /a randomNum=!random!%%100
     echo 随机数:!randomNum!
  )
  pause

三、生成n-m之内的随机数

 

求余数运算set /a randomNum=!random!%%100中的100可以是1~32768之间的任意整数。
总结:利用系统变量%random%,求余数运算%%,字符串处理等,可以实现很多随机处理。

通过上面的学习,我们知道,%random%可以产生0到32767之间的随机数,但是,如何才能得到一定范围内的随机数呢? 
我们可以使用通用的算法公式如下: 
通用的公式%random%%%(max-min+1)+min来产生[min,max]区间里的随机数,
注:批处理中求模得用两个%%符号。 
比如,我们想获得4到12之间的随机数,就可以这样来使用,代码如下:

@REM 产生10个[4,12]间的随机数 
@echo off 
REM 启用延迟环境变量扩展 
setlocal enabledelayedexpansion 
REM 设置随机数的最小和最大值以及求模用的变量 
set min=4 
set max=12 
set /a mod=!max!-!min!+1

for /l %%i in (1,1,10) do ( 
REM 产生[min,max]之间的随机数 
set /a r=!random!%%!mod!+!min! 
echo. 
echo 随机数%%i:!r!)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【批处理DOS-CMD命令-汇总和小结】-利用cmd命令生成随机数、生成指定范围的随机数 的相关文章

随机推荐

  • Shell 脚本中判断字符串是否为空

    判断一个字符串是否为空的方法 方法一 if str 如果str是空字符串则返回真 方法二 if x str x 如果str是空字符串则返回真 方法三 if z str 如果str是空字符串则返回真 注意 前面三种方式判断字符串的时候最好使用
  • 【matlab】指数分布、均匀分布、正态分布

    指数分布 产生参数为0 1的指数分布的命令应为exprnd 1 0 1 题目要求 顾客到来间隔时间服从参数为0 1的指数分布 指数分布的均值为1 0 1 10 产生参数为0 1的指数分布的命令应为exprnd 1 0 1 指两个顾客到达商店
  • 不支持的 HTTP 请求方法 POST

    url书写有问题 微信redirect uri到后台不需要urlEncode
  • 开漏输出与推挽

    1 推挽输出 可以输出高 低电平 连接数字器件 输出 0 时 N MOS 导通 P MOS 高阻 输出0 输出 1 时 N MOS 高阻 P MOS 导通 输出1 不需要外部上拉电路 开漏输出 输出端相当于三极管的集电极 适合于做电流型的驱
  • Node处理文件(遍历文件夹删除指定文件)

    需求 遍历DATA文件夹删除txt文件 const path require path const fs require fs const dir DATA fs readdir dir err files gt files forEach
  • CodeBlock编译 mqtt

    下载源码编译 git clone https github com eclipse paho mqtt c git cd paho matt c make sudo make install 如果编译遇到错误 安装openssl 1 1 1
  • 【机器学习】Excel对数据线性回归分析

    目录 一 实验目的 二 高尔顿数据集 1 父子身高 2 母子身高 三 Anscombe四重奏 四 参考 一 实验目的 1 线性回归练习 父亲高则儿子高 父亲矮则儿子矮 即父亲与儿子身高相关 且为正相关 母高高一窝 父高高一个 即母亲的身高比
  • 【python】 定义一个Person类,它包含数据成员age, name和gender。从Person中派生一个类Employee,在新类中添加一个数据成员,存储个人的number.等等

    定义一个Person类 它包含数据成员age name和gender a 从Person中派生一个类Employee 在新类中添加一个数据成员 存储个人的number 再从Employee中派生一个类Executive 每个派生类都应该定义
  • 商业智能BI专题报告(精选九篇)

    BI Business Intelligence 即商业智能 它是一套完整的解决方案 把企业的运营数据转化为信息或知识 辅助企业做出明智的业务经营决策的工具 将无序 零散 孤立的数据转换成整合的 规律的 有价值的数据资产 将其以直观 形象的
  • linux磁盘性能测试

    linux磁盘性能测试 1 测试磁盘写能力 time dd if dev zero of test db bs 8k count 1000000 oflag direct 因为 dev zero是一个伪设备 不产生IO 所以主要都集中在te
  • 传感器学习——DS18B20

    DS18B20 DS18B20是Dallas公司生产的数字温度传感器 具有体积小 适用电压宽 经济灵活的特点 它内部使用了onboard专利技术 全部传感元件及转换电路集成在一个形如三极管的集成电路内 DS18B20有电源线 地线及数据线3
  • 微信小程序线上加载使用iconfont问题

    1 在微信小程序根目录下创建style文件夹 里面再创建iconfont文件夹 用于放置iconfont图标文件和iconfont样式文件 2 给iconfont wxss写样式 也可以下载iconfont代码 拷贝iconfont css
  • PowerShell入门教程

    PowerShell基础语句 1 进入Powershell环境 开始 运行 powershell 开始 运行 cmd powershell 不同系统内置的powershell系统版本是不一样的 查看版本 psversiontable 2 p
  • 第十一篇 绘图matplotlib.pyplot的使用

    文章目录 摘要 安装方法 入门案例 使用plt绘图 使用ax绘图 plt figure参数 plot参数 案例一 绘制红色实心的点状图 案例二 绘制红色的破折线图 案例三 绘制两条线 颜色总结 设置标题 轴名称 图例 使用plt实现绘图 使
  • lua元表与面向对象

    lua元表 扩展普通表的行为 setmetatable tab mematable 如果元表中存在 mematable setmematable会失效 mematable可以保护元表 禁止访问或修改元表中的成员 getmetatable t
  • 原型对象和原型链的理解

    大家都应该知道构造函数很好用 但是构造函数也存在浪费内存的问题 function Star uname age this uname uname this age age this sing function console log 我会唱
  • 网御ACM上网行为管理系统存在SQL注入漏洞【小龙检测工具已更公开】

    网御ACM上网行为管理系统bottomframe cgi接口存在SQL注入漏洞 一 系统简介 二 漏洞描述 三 影响版本 四 fofa查询语句 五 漏洞复现 执行md5 1 函数 执行user 六 POC EXP 七 修复建议 免责声明 请
  • vscode 更新报错,中止以后软件打不开的修复方式

    前言 今天打开 vscode 正准备敲代码的时候 发现 vscode 提示升级 于是想也不想的点了升级 当然 你也可以在这里手动检查程序是否升级了 然后悲剧就发生了 升级到一半的时候 提示进行不下去了 问我是否要重试 或者终止 当时没截图
  • Qt天气预报

    目录 环境 weather pro main cpp weather h weather cpp weatherdata h 今天 未来6天数据体 weathertool h 获取城市编码工具类 ui weather h UI设计器生成的头
  • 【批处理DOS-CMD命令-汇总和小结】-利用cmd命令生成随机数、生成指定范围的随机数

    零 转载链接 bat脚本的基本命令语法 整合侠 博客园 一 cmd命令的随机数取值范围 RANDOM 系统变量只能返回 0 到 32767 之间的任意十进制数字 2的15次方等于32768 上面的0 32767实际就是15位二进制数的范围