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

批处理怎样随机发牌?

要求:一副扑克52张牌(不包括大小王),随机发出13张。

以前写的个.
  1. @echo off
  2. :lis
  3. cls&setlocal enabledelayedexpansion
  4. for %%a in (黑桃 红桃 梅花 方块) do (
  5.   for /l %%b in (2 1 14) do (
  6.   set ww=00%%b
  7.   set ww=!ww:~-2!
  8.   set _!random!=!ww!-%%a
  9. ))
  10. for /f "tokens=2,3 delims=_-=" %%a in ('set _^|sort /r') do (
  11.    set /a var+=1&if !var! leq 13 set +%%a-%%b=%%a
  12. )
  13. for /f "tokens=1,2 delims=+=" %%a in ('set +^|sort') do (
  14.   for /f "tokens=1,2 delims=-" %%i in ("%%a") do (
  15.      set /a suz=100%%i%%100,jia=10
  16.      for %%k in (J Q K A) do set /a jia+=1&call set suz=%%suz:!jia!=%%k%%
  17.      set %%j=!%%j! !suz!
  18. ))
  19. for %%a in (黑桃 红桃 梅花 方块) do if not "!%%a!"=="" echo %%a !%%a!
  20. echo\&echo 按任意键,进行下一轮发牌。
  21. pause>nul&endlocal
  22. goto lis
复制代码
技术问题请到论坛发帖求助!

TOP

楼上的不错,不过提个建议

黑桃,梅花等不应该由你用文字表述出来,而应该是 用批处理显示出来
比如:方块 A可以这样
------------------------
|    ◆       A     |
|                             |
|                             |
|   A               ◆     |
-----------------------
当然,还可以做的漂亮些

TOP

楼上的提议好。顶个。
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

TOP

楼上建议不错,我刚写好就照你们说的改了一下,看看效果如何.
  1. @echo off&setlocal enabledelayedexpansion
  2. for /l %%i in (1,1,13) do (call :random&call :model)
  3. echo.&pause>nul&exit
  4. :random
  5. set random1=%random%
  6. set random2=%random%
  7. set /a random1%%=14
  8. set /a random2%%=5
  9. if %random1% equ 0 (goto random) else (
  10. (set 11=J)&(set 12=Q)&(set 13=K)
  11. if %random2% equ 0 (goto random) else (
  12. (set 1=桃)&(set 2=杏)&(set 3=梅)&(set 4=方)
  13. set model=!%random2%!
  14. if %random1% lss 11 (
  15. if %random1% equ 1 (set num= A) else (set num= !random1!)
  16. ) else (set num= !%random1%!)
  17. goto :eof
  18. )
  19. )
  20. :model
  21. echo.  ┌────┐
  22. echo.  │!model!  !num!│
  23. echo.  │    │
  24. echo.  │    │
  25. echo.  │    │
  26. echo.  │    │
  27. echo.  │!num!  !model!│
  28. echo.  └────┘
  29. goto :eof
复制代码

TOP

呵呵,还有一个建议
一行可以 显示 几张牌的嘛

TOP

回复 2# 的帖子

是小楼吧????????????

TOP

回复 3# 的帖子

请教一下,黑桃、红桃、草花的符号有怎么输呢???

TOP

回复 7# 的帖子

呵呵,就是那个家伙
都叫他都用 小楼 他就是不用!!!
死脑筋!!

TOP

回复 9# 的帖子

言归正传,黑桃、方块、草花符号???

TOP

只会输 方块,其它的不会 输

TOP

♥ ♠ ♣ ♦

在开始-程序-附件-系统工具-字符映射表,字体为“Times New Romen”,
差不多最下面的位置

[ 本帖最后由 ieutk 于 2007-12-31 02:12 编辑 ]
1

评分人数

不大可能的事也许今天实现,根本不可能的事也许明天会实现

TOP

呵呵,加分
还不错嘛

TOP

回复 12# 的帖子

这个我知道,关键是怎么让它们在批处理中显示出来??

TOP

返回列表