随机数的使用还是很普遍的,尤其是和游戏相关的时候。如何利用Batch批处理来生成任意区间的随机整数,这一节我们一起来看看。
我是T型人小付,一位坚持终身学习的互联网从业者。喜欢我的博客欢迎在csdn上关注我,如果有问题欢迎在底下的评论区交流,谢谢。
简单介绍
和shell命令一样,默认情况下的批处理运算都只是支持到整数而已,并且都是向靠近0取整。例如
c:\Batch\test>set /a a=2/3
0
c:\Batch\test>set /a a=5/3
1
c:\Batch\test>set /a a=-5/3
-1
%random%
这个环境变量会返回一个区间在[0,32768)
的整数,注意右边是开集。例如
c:\Batch\test>echo %random%
19531
c:\Batch\test>echo %random%
8501
c:\Batch\test>echo %random%
10888
使用方法详解
常规使用
直接打印出%random%
即可
生成0开始任意长度整数
假设想生成区间为[0,m)
的整数,那么可以用%random%*m/32768
来实现,例如想要生成[0,100)的随机整数,直到生成的数小于35为止
:: random number less than 35
@echo