找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
楼主: youxi01

批处理如何产生一个100-200 之间的随机数?

[复制链接]
发表于 2011-10-27 13:00:39 | 显示全部楼层
学习中。都是人才啊。目的都实现。方法各不同。
发表于 2013-1-12 15:58:21 | 显示全部楼层
  1. @echo off
  2. set /a a=%random%%%100+101
  3. echo %a%
  4. pause>nul
复制代码
发表于 2013-5-31 13:54:17 | 显示全部楼层
我想问一下,能不能用for /l %%i in (100,1,200) do
然后从里面随机抽一个,可以的话后面应该怎么写?谢谢!
发表于 2013-7-30 07:20:34 | 显示全部楼层
本帖最后由 sincere 于 2013-7-30 11:09 编辑

  1. @echo off
  2. set min=%1
  3. set max=%2
  4. if %min% equ %max% (echo %min%) & exit /b
  5. if %min% gtr %max% (set min=%max%) & (set max=%min%)
  6. echo %min% + %random% %% (%max% - %min% + 1)
复制代码
发表于 2013-8-2 10:19:26 | 显示全部楼层
@echo off
set /a i=%random%%%100+100
echo %i%
pause
发表于 2013-12-30 15:33:11 | 显示全部楼层
  1. @echo off
  2. set /a a=%random%%%101+100
  3. echo %a%
  4. pause > nul
复制代码
发表于 2014-2-9 22:21:18 | 显示全部楼层
set /a w=100+%random%%%100
发表于 2015-5-9 22:20:49 | 显示全部楼层
@echo off
set /a day=%random% %%200
echo %day%
pause>nul
发表于 2015-6-8 16:23:20 | 显示全部楼层
  1. @echo off
  2. :1
  3. set/a m=1%time:~-2%
  4. echo %m%
  5. pause >nul
  6. goto :1
复制代码
群里讨论了,严格意义上不算随机。
发表于 2015-8-12 18:04:47 | 显示全部楼层
能用最短的批处理代码 实现 128位的 指定某些字符串的 字符串吗 我想加密我的软件要用
发表于 2015-10-15 22:39:06 | 显示全部楼层
回复 1# youxi01

  1. @echo off
  2.     call :CreateRandom
  3.     echo %createRandom%
  4. goto :EOF

  5. :CreateRandom
  6. set createRandom=%RANDOM%
  7. if %createRandom% LSS 100 (
  8.     goto :CreateRandom
  9. ) else if %createRandom% LEQ 200 (
  10.     exit /b
  11. ) else (
  12.     goto :CreateRandom
  13. )
复制代码
发表于 2015-10-17 17:46:56 | 显示全部楼层
写了个范围内产生随机数的代码,请大家给点意见
  1. @echo off

  2. set /p fist=请输入您的随机数开始值:
  3. set /p end=请输入您的随机数结束值:

  4. :loop
  5. set /a w=%random% %% (end+1)
  6. if %w% geq %fist% (echo %w%) else goto loop
  7. pause>nul
复制代码
发表于 2017-8-9 20:08:51 | 显示全部楼层
使用if判断:

  1. @echo off
  2. color f0
  3. :eee
  4. set randomed=%random%
  5. if %randomed% lss 100 goto eee
  6. if %randomed% gtr 200 goto eee
  7. echo %randomed%
  8. set randomed=
  9. pause>nul
  10. exit
复制代码
发表于 2017-12-2 23:34:47 | 显示全部楼层
回复 4# youxi01

原来是取余
发表于 2018-1-3 12:54:42 | 显示全部楼层
@echo off
:loop
set /a num=%random%%%200+1
echo %num%
pause>nul
goto loop
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-16 22:04 , Processed in 0.023944 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表