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

输出五位数以内的数

:: 输出随机数
@echo off
set /a p=%random%%%100+1
echo %p%
pause>nul

想输出五位数以内的数,就对其取余。随机数的生成是大概根据系统时间来生成的吧。

TOP

嗯!!
学到了一个%random%
随机数
砂石下的泉水,掘得越深,泉水会越清吗?

TOP

  1. @echo off
  2. echo %random%
  3. set "var=10000"&set sss=%random%
  4. if "%sss%" gtr "%var%" (echo 大于10000) else echo 小于10000
  5. ping -n 2 127.1>nul&%0
复制代码

不明白这里为什么都是   大于10000,即使是  小于10000 的情况

[ 本帖最后由 hlzj88 于 2008-11-10 21:27 编辑 ]
目的,学习批处理

TOP

哇··!!!确实是学习P处理的好地方··!!

TOP

1.使用环境变量%random%
2.set /p xxx
3.
检测随机数是否大于 10000,如果是,则显示如下:
该随机数 大于 10000
如果不是,则显示:该随机数 小于 10000
如果不是,应该显示小于或等于10000吧(^_^)
@echo off
if %random% gtr 10000 echo 该随机数大于10000&pause>nul&exit
echo 该随机数小于或等于10000&pause>nul&exit
4.
@echo off
set /p store=请输入变量:
if "%store%" == "A" echo 你输入的为A&pause>nul&exit
echo 你输入的不为A&pause>nul&exit

TOP

请教

原帖由 a794685135 于 2008-9-2 16:47 发表
你好,我有几个问题想请教 一下,
@echo off
set a=%random%
echo 这是取值到的随机数:%a%
if %a% GTR 10000 (echo 该随机数 大于 10000) else (                这么中的 GTR 指的是。。。我猜是运算符对吗 ,能给几出其余的吗?        
echo 该随机数 小于 10000)
set /p b=请输入"A":
if A EQU %b% (echo 你输入的为A) else (                 这以中的EQU 指的是。。
e ...



非常感谢

TOP

回复 37楼 的帖子

EQU - 等于
NEQ - 不等于
LSS - 小于
LEQ - 小于或等于
GTR - 大于
GEQ - 大于或等于

TOP

能看懂

能看懂,不会做.....

TOP

不会             请指教

TOP

1.
  1.      set num=%random%
复制代码


2.
  1.      set /p var=请输入字符:
复制代码


3.
  1.      @echo off
  2.      set num=%random%
  3.      if %num% gtr 10000 (
  4.      echo 大于 10000
  5.      ) else (
  6.      echo 小于10000
  7.      )
  8.      pause
  9.      ::几次试验的结果都是随即数在5000+的范围内 不说是0 到 32767 之间的任意十进制数字吗 请教高手解答
复制代码


4.
  1.      @echo off
  2.      set /p var=请输入字符:
  3.      if %var% ==A (
  4.      echo 你输入的为A
  5.      ) else (
  6.      echo 你输入的不为A
  7.      )
  8.      pause
复制代码

     ::考虑大小写的话就这样了,小写的a也是不为A的

TOP

本人是菜鸟 所以现在还正式在学习中

TOP

没看前面的帖子,不知道有没重复的,发了之后再看吧.

  1. @echo off
  2. set x=%random%
  3. echo %x%
  4. set /p y=请输入:
  5. echo 你输入的是:%y%
  6. if "%x%" lss "10000" (echo 该随机数小于10000) else echo 该随机数大于10000
  7. if "%y%"=="a" (echo 你输入的为a) else echo 你输入的不是a
  8. pause>nul
复制代码

TOP

原帖由 shenmeshibat 于 2008-10-2 16:42 发表
为什么echo %random% 输出的都是5位的数字,然后随机变化的也只有后三位?

if %rdm% gtr 10000 (echo rdm is greater than 10000) else (echo rdm is less than 10000)
pause>nul  ::这个可以讲解下吗?

@ech ...

@echo off          ::关闭回显
:AA                     ::标签AA
cls                      ::清屏
echo 1               ::显示1
echo %random%      ::显示一个随即数。(为什么随即算都是五位??我也不明白,期待高手回答)
pause                 ::暂停,等待输入
echo 2                  ::显示2
set /p var=请输入:    ::设置 var 等于你输入的变量值 /p 就是让外部输入数据的一个开关
echo %var%             ::显示上面的变量值
pause                       ::暂停
echo 3                      ::显示3
set aa=%random%   ::设置变量aa为随即数。
if %aa% gtr 10000 (echo %aa%大于10000) else echo %aa%小于10000  :if)判定(%aa%)变量(gtr)大于10000(就显示 %aa%变量大于10000)(else)如果不是<可以理解为如果前面的不成立>就显示 %%变量小于10000
pause>nul                     ::暂停,>nul 将结果输出到不存在的地方 空地方,  加了这个就不会提示: 按任意键继续了

我也是新手,能理解的就是这样了,难免有错误之处,期待高手指正;

TOP

re:if入门训练

批处理的变量不是仅仅是字符串而已吗,不能处理数学运算的吧?!产生随机数是涉及到数学运算的,变量类型是实型的。该怎么弄?
printer-小祥

TOP

答案


@echo off
cd %windir%
echo %random%
pause>nul&exit

@echo off
cd %windir%
set/p =等待用户输入字符:
pause>nul&exit

@echo off
cd %windir%
set n=%random%
echo 获取随机数为:%n%
if %n% gtr 10000 (echo 该随机数大于10000) else echo 该随机数小于10000
pause>nul&exit

@echo off
cd %windir%
:again
set/p input=输入字符:
if %input% equ A (echo 你输入的是A) else echo 你输入的不是A&goto :again
pause>nul&exit

TOP

返回列表