Board logo

标题: 学习中,请帮助[在线等待学习] [打印本页]

作者: sea1112     时间: 2008-4-29 07:54    标题: 学习中,请帮助[在线等待学习]

请高手帮助
我想做个六合彩的P玩
我想开100次六合彩给自己看,可是不会写P

号码为1-49
一次开7个,格式为:x1 x2 x3 x4 x5 x6   x7
P是这样想的
X1-7对比不可有相同
X1-6排大小,小到大排列
echo %x1% %x2% %x3% %x4% %x5% %x6%       %x1%>>num.txt

在线等待,谢谢帮忙
作者: bat-zw     时间: 2008-4-29 09:25
同一组号码间没排序
@echo off
if exist num.txt del /q num.txt
set n=0
:begin
set /a n+=1&set m=0&set str=&set var=
if %n% gtr 100 start num.txt&goto :eof
:lp
set /a a=%random%%%49+1
for %%i in (%str%) do if %%i equ %a% goto lp
set str=%str% %a%&set /a m+=1
set var=%var% %n%-%a%
if %m% equ 7 (
   echo %var%>>num.txt&goto begin
   ) else (
   goto lp
)
[ Last edited by zw19750516 on 2008-4-29 at 11:38 AM ]
作者: sea1112     时间: 2008-4-29 10:31
出来的是这样的
2-47  2-14  2-5  2-24  2-43  2-45  2-31
3-21  3-1  3-45  3-31  3-11  3-32  3-25
4-28  4-48  4-41  4-32  4-31  4-22  4-5
5-35  5-22  5-12  5-3  5-21  5-20  5-14
6-26  6-46  6-18  6-36  6-41  6-16  6-21
7-38  7-35  7-32  7-43  7-23  7-16  7-8
8-39  8-46  8-5  8-3  8-22  8-26  8-12

没排序啊!!
出来的是这样就好了。
期号:  号码_ _ _ _ _ _              特号__
2期            5 14 24 43 45 47           31
3期            1 11 21 31 32 45           25
.................

功能提升
数据能写入xls就最好了。



[ Last edited by sea1112 on 2008-4-29 at 11:03 AM ]
作者: bat-zw     时间: 2008-4-29 11:06
楼主要求还真高啊,写入xls是做不到的,你自己复制过去就是的啊
作者: zh159     时间: 2008-4-29 11:14
生成逗号分隔的*.csv文件就可以用Excel打开再稍加编辑就OK

如果用复制粘贴到Excel,要用{TAB}分隔

[ Last edited by zh159 on 2008-4-29 at 11:15 AM ]
作者: abcd     时间: 2008-4-29 11:15
如果要写入excel的话,

可以用VBA

或者vbs
作者: sea1112     时间: 2008-4-29 11:44


  Quote:
Originally posted by zh159 at 2008-4-29 11:14 AM:
生成逗号分隔的*.csv文件就可以用Excel打开再稍加编辑就OK

如果用复制粘贴到Excel,要用{TAB}分隔

[ Last edited by zh159 on 2008-4-29 at 11:15 AM ]

写你的东西出来,大家学习下啊
作者: bat-zw     时间: 2008-5-4 21:17    标题: n天后终于能给楼主较满意的答案了:

请自己从num.txt中复制粘贴至excel,因论坛处理不了tab键,请自己把组号        号码        特号和%n%        !str!        !th!中间的空格改为tab(方法是删除空格后在字符后面按下tab键)
@echo off&setlocal enabledelayedexpansion
echo 组号        号码        特号>num.txt
set n=0
:begin
set /a n+=1&set m=0&set str=
if %n% gtr 100 start num.txt&goto :eof
:lp
set /a num=%random%%%49+1
if %num% lss 10 set num=0%num%
set num=#%num%#
for %%i in (%str%) do if %%i equ %num% goto lp
set str=%num% %str%&set /a m+=1
if %m% equ 7 (
   for %%i in (%str%) do set a=%%i&call :loop
   set str=!str:#=!
   for %%i in (!str!) do set th=%%i
   echo %n%        !str!        !th!>>num.txt
   goto begin
   ) else (
   goto lp
)
:loop
for %%i in (%str%) do (
    set b=%%i
    set b=!b:~1,-1!&set c=!a:~1,-1!
    if !b! lss !c! (
       set str=!str:%a% =!
       set str=!str:%%i=%%i %a%!
       ) else (
       set str=!str!
    )
)
附图片:


[ Last edited by zw19750516 on 2008-5-6 at 12:36 AM ]