Board logo

标题: 有兴趣的都来研究下(星罗满布) [打印本页]

作者: bat-zw     时间: 2008-7-13 20:29    标题: 有兴趣的都来研究下(星罗满布)

粗略写的,意在抛砖,还请高手们完善了:
@echo off&color 1f&setlocal enabledelayedexpansion
set "code= abcdefghij "&set "s=┃"&set "m=0"
:begin
set /a a=%random%%%10+1,b=%random%%%10+1
set b=!code:~%b%,1!
if not defined _%a%%b% (if %m% equ 0 (set "_%a%%b%=●") else (set "_%a%%b%=○")) else (goto begin)
cls&echo ┏━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┓
for /l %%a in (1,1,10) do (
    for /l %%i in (1,1,10) do (set str=!code:~%%i,1!
        if defined _%%a!str! (call :lp %%a
           set /p=%s% !var! <nul
           ) else (
           set /p=%s%    <nul
    ))
    set /p=%s% %%a<nul&echo.
    if %%a neq 10 (
       echo ┣━━╋━━╋━━╋━━╋━━╋━━╋━━╋━━╋━━╋━━┫
       ) else (      
       echo ┗━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┛
))
for /l %%i in (1,1,10) do set /p=   !code:~%%i,1!  <nul
echo    %a%%b%&set /a n+=1,m+=1
if %m% equ 2 set m=0
if %n% lss 100 (for /l %%i in (1,1,6000) do echo>nul&goto begin) else (pause>nul&goto :eof)
:lp
set var=!_%1%str%!
[ Last edited by zw19750516 on 2008-7-14 at 12:37 AM ]
作者: slore     时间: 2008-7-13 20:33
果然很粗略呀。。。

XXXXX不是内部命令。。。
作者: bat-zw     时间: 2008-7-13 20:37


  Quote:
Originally posted by slore at 2008-7-13 20:33:
果然很粗略呀。。。

XXXXX不是内部命令。。。

这不能怪我啊,这是页面的问题,已经改好了,晕。
作者: 26933062     时间: 2008-7-13 22:12
执行效率应该比你的要高,但是视觉效果确不如你的,不知道为什么、郁闷。。!

:
@echo off&setlocal EnableDelayedExpansion&color 1f
set "_0=○ "&set "_1=● "
set s1=┏━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┓
set s2=┣━━╋━━╋━━╋━━╋━━╋━━╋━━╋━━╋━━╋━━┫
set s3=┗━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┛
for /l %%i in (1,1,100) do set .%%i=%%i&set "str%%i=  "
for /l %%i in (1,1,100) do (
    set /a rnd=!random!%%100+1
    call set tmp=%%.!rnd!%%
    set .!rnd!=!.%%i!
    set .%%i=!tmp!
)
for /f "tokens=1,2 delims=.=" %%i in ('set .') do (
  set /a w=!random!%%2
  call set str%%j=%%_!w!%%&cls
  set /a nn=0
  for /l %%a in (1 1 10) do (
    set "num%%a="
    for /l %%b in (1 1 10) do (
      set /a nn+=1
      call set num%%a=!num%%a!┃%%str!nn!%%
     )
     set num%%a=!num%%a!┃
   )
    echo !s1!
    for /l %%a in (1 1 10) do echo !num%%a!&if %%a neq 10 echo !s2!
    echo !s3!
    for /l %%a in (1 1 1200) do ver>nul
)
pause>nul

作者: slore     时间: 2008-7-13 22:13
效果不错。。。bat的刷新把人看的眼晕。。。
作者: 523066680     时间: 2008-7-14 07:37
哈哈哈 我们可以做个鱼缸  把那些网去掉  然后用字符弄些鱼儿
冒泡    还可以拿来做屏保哦
作者: bat-zw     时间: 2008-7-14 12:18


  Quote:
Originally posted by 523066680 at 2008-7-14 07:37:
哈哈哈 我们可以做个鱼缸  把那些网去掉  然后用字符弄些鱼儿
冒泡    还可以拿来做屏保哦

兄弟思维敏锐啊。
作者: 523066680     时间: 2008-7-16 08:37
不知道为什么 我总是很喜欢批处理的视觉类效果  觉得很有趣 很好玩
对这方面很感兴趣   也很希望以后的《批处理精华帖》中能把视觉类的批处理整理出来,我觉得这是批处理的一大特色