|
gcdj
初级用户
积分 64
发帖 57
注册 2010-2-25
状态 离线
|
『楼 主』:
[求助]谁能帮我做个随机预测彩票号码的批处理?
谁能帮我做个用bat随机预测彩票的文件?
要求四种类类型。
第一种 随机 0~9 的数字 要求随机显示三位数字
第二种 随机 0~9 数字 要求随机显示四位数字
第三种 随机 1~31 数字 要求随机显示五位数字
第四种 随机1~43 数字 要求随机显示六位数字
要求有个菜单
选择1就出现3位数字,出现数字后还可以在选1,2,3,4,5,0并出现新的随机数字
选择2就出现4位数字,出现数字后还可以在选1,2,3,4,5,0并出现新的随机数字
选择3就出现5位数字,出现数字后还可以在选1,2,3,4,5,0并出现新的随机数字
选择4就出现6位数字,出现数字后还可以在选1,2,3,4,5,0并出现新的随机数字
选择5就出现1到4的全部数字,出现数字后还可以在选1,2,3,4,5,0并出现新的随机数字
选择0退出。
[ Last edited by gcdj on 2010-3-5 at 21:18 ]
|
|
2010-3-5 21:08 |
|
|
Hanyeguxing
银牌会员
正在学习中的菜鸟...
积分 1039
发帖 897
注册 2009-3-1 来自 在地狱中仰望天堂
状态 离线
|
|
2010-3-5 21:27 |
|
|
000000000000000
初级用户
积分 49
发帖 42
注册 2009-11-26
状态 离线
|
『第
3 楼』:
@echo off
setlocal enabledelayedexpansion
:input
echo 1. 0-9, 随机三位
echo 2. 0-9, 随机四位
echo 3. 1-31, 随机五位
echo 4. 1-43, 随机六位
echo 5. 显示前四项结果
echo 0. 退出
echo;
set /p i=请选择:
cls
if "!i!"=="0" exit
if "!i!"=="1" call :n 3 10 0
if "!i!"=="2" call :n 4 10 0
if "!i!"=="3" call :n 5 31 1
if "!i!"=="4" call :n 6 43 1
if not "!i!"=="5" goto input
call :n 3 10 0
call :n 4 10 0
call :n 5 31 1
call :n 6 43 1
goto input
:n
for /l %%a in (1 1 %1) do (
set /a n=!random! %% %2 + %3
set /p =!n! <nul
)
echo;
echo =======================
if %i% neq 5 goto input 直接回车, 是重复上次的选择.
[ Last edited by 000000000000000 on 2010-3-5 at 23:06 ]
|
|
2010-3-5 22:51 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
|
2010-3-5 23:47 |
|
|
gcdj
初级用户
积分 64
发帖 57
注册 2010-2-25
状态 离线
|
『第
5 楼』:
Quote: | Originally posted by 000000000000000 at 2010-3-5 22:51:
[code]@echo off
setlocal enabledelayedexpansion
:input
echo 1. 0-9, 随机三位
echo 2. 0-9, 随机四位
echo 3. 1-31, 随机五位
echo 4. 1-43, 随机六位
echo 5. 显示前四项结果 ... |
|
谢谢您的代码,我试验了,不错!
就是有一个问题,随机出现的数字有重复的。之前我忽略了这一点。
|
|
2010-3-6 07:49 |
|
|
gcdj
初级用户
积分 64
发帖 57
注册 2010-2-25
状态 离线
|
『第
6 楼』:
这个也不错!收下啦!谢谢!
|
|
2010-3-6 08:12 |
|
|
000000000000000
初级用户
积分 49
发帖 42
注册 2009-11-26
状态 离线
|
『第
7 楼』:
@echo off
setlocal enabledelayedexpansion
:input
echo 1. 0-9, 随机三位
echo 2. 0-9, 随机四位
echo 3. 1-31, 随机五位
echo 4. 1-43, 随机六位
echo 5. 显示前四项结果
echo 0. 退出
echo;
set /p i=请选择:
cls
if "!i!"=="0" exit
if "!i!"=="1" call :n 3 10 0
if "!i!"=="2" call :n 4 10 0
if "!i!"=="3" call :n 5 31 1
if "!i!"=="4" call :n 6 43 1
if not "!i!"=="5" goto input
call :n 3 10 0
call :n 4 10 0
call :n 5 31 1
call :n 6 43 1
goto input
:n
setlocal
set loop=%1
:loop
set /a n=%random% %% %2 + %3
if defined %n% goto loop
set %n%=d
set /p =%n% <nul
set /a loop-=1
if %loop% neq 0 goto loop
endlocal
echo;
echo =======================
if %i% neq 5 goto input
|
|
2010-3-6 11:21 |
|
|
gcdj
初级用户
积分 64
发帖 57
注册 2010-2-25
状态 离线
|
『第
8 楼』:
Quote: | Originally posted by 000000000000000 at 2010-3-6 11:21:
[code]@echo off
setlocal enabledelayedexpansion
:input
echo 1. 0-9, 随机三位
echo 2. 0-9, 随机四位
echo 3. 1-31, 随机五位
echo 4. 1-43, 随机六位
echo 5. 显示前四项结果 ... |
|
问题解决了!谢谢~~
|
|
2010-3-9 07:50 |
|