|
bat-zw
金牌会员
      永远的学习者
积分 3105
发帖 1276
注册 2008-3-8
状态 离线
|
『楼 主』:
出给新手的加分题-随机取值
使用 LLM 解释/回答一下
好久没有出过题了,今天来一出给新手的题,老手们还请略过了:
题目:
现有a-z和1-26的一一对应,现在要求用批处理从1-26和a-z 52个值
(全视为值)中随机取得10个不同的值,如1和a 26和z视为相同的值
要求:
代码高效、简洁、通用、并不生成临时文件
加分:
代码完全符合要求的加10分
Long time no issue, today I'll make one for newcomers, and veterans please skip:
Title:
Now there is a one-to-one correspondence between a-z and 1-26. Now we need to use batch processing to randomly get 10 different values from 52 values of 1-26 and a-z (all regarded as values). For example, 1 and a, 26 and z are regarded as the same value.
Requirements:
The code is efficient, concise, general, and does not generate temporary files.
Bonus:
Add 10 points if the code fully meets the requirements.
|

批处理之家新域名:www.bathome.net |
|
2008-8-24 10:32 |
|
|
bat-zw
金牌会员
      永远的学习者
积分 3105
发帖 1276
注册 2008-3-8
状态 离线
|
『第 2 楼』:
使用 LLM 解释/回答一下
看来现在是要代码的多,真的抱着学习目的来的少,唉。。。
It seems that now there are more people asking for code, and really few who come with the purpose of learning. Alas...
|

批处理之家新域名:www.bathome.net |
|
2008-8-24 14:29 |
|
|
pusofalse
银牌会员
    
积分 1604
发帖 646
注册 2008-4-13
状态 离线
|
『第 3 楼』:
使用 LLM 解释/回答一下
感叹。。人气不盛。。
Sigh.. Not much popularity..
|

心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^ |
|
2008-8-24 14:58 |
|
|
dragonamd
中级用户
  
积分 209
发帖 100
注册 2008-8-1
状态 离线
|
『第 4 楼』:
使用 LLM 解释/回答一下
难度太大,理解不够,。吃不消,本人并不是为了代码而来
The difficulty is too great, I don't understand enough. Can't take it. I'm not here for the code.
|
|
2008-8-24 15:31 |
|
|
dragonamd
中级用户
  
积分 209
发帖 100
注册 2008-8-1
状态 离线
|
『第 5 楼』:
使用 LLM 解释/回答一下
本人愚钝,真心拜师,喜欢收徒的来!
I am dull-witted, sincerely seeking to become an apprentice. Those who like to take apprentices come!
|
|
2008-8-24 15:33 |
|
|
523066680
银牌会员
     SuperCleaner
积分 2362
发帖 1133
注册 2008-2-2
状态 离线
|
『第 6 楼』:
使用 LLM 解释/回答一下
真不好决策呢……虽然很想搬上来 但我算不算老手啊
It's really hard to make a decision... Although I really want to move it up, but am I considered an old hand?
|

综合型编程论坛
我的作品索引 |
|
2008-8-24 16:26 |
|
|
523066680
银牌会员
     SuperCleaner
积分 2362
发帖 1133
注册 2008-2-2
状态 离线
|
『第 7 楼』:
使用 LLM 解释/回答一下
我再加一水贴,哎没办法 有一部分人都往bathome过渡哦
I'll add another water post, hey, there's no way. Some people are all transitioning to bathome.
|

综合型编程论坛
我的作品索引 |
|
2008-8-24 16:46 |
|
|
holee
初级用户
 
积分 53
发帖 27
注册 2005-7-18
状态 离线
|
『第 8 楼』:
使用 LLM 解释/回答一下
感觉难度比较高啊。。。唉。。继续我的蜗牛学习之路。。
It feels quite difficult... Alas. Continue my snail - like learning journey.
|
|
2008-8-24 17:54 |
|
|
kghong
初级用户
 
积分 26
发帖 13
注册 2006-9-24
状态 离线
|
『第 9 楼』:
使用 LLM 解释/回答一下
dos盲.有难度呀.慢慢来
DOS is blind. It's difficult. Take your time.
|
|
2008-8-24 19:18 |
|
|
bat-zw
金牌会员
      永远的学习者
积分 3105
发帖 1276
注册 2008-3-8
状态 离线
|
|
2008-8-24 19:29 |
|
|
BC
中级用户
  
积分 338
发帖 175
注册 2007-10-21
状态 离线
|
『第 11 楼』:
使用 LLM 解释/回答一下
我晕,没想到那么难...
Last edited by BC on 2008-8-25 at 08:32 AM ]
Oh, I'm dizzy, didn't expect it to be so difficult...
Last edited by BC on 2008-8-25 at 08:32 AM ]
|

C:\
C:\Del BC |
|
2008-8-24 22:52 |
|
|
daker
初级用户
 
积分 34
发帖 17
注册 2007-5-23
状态 离线
|
『第 12 楼』:
使用 LLM 解释/回答一下
@echo off
setlocal EnableDelayedExpansion
set nu=a b c d e f g h i j k l m n o p q r s t u v w x y z
set n=0
:_loop
if %n% geq 10 (goto _end)
set /a n=%n%+1
set /a unx=%random%%%26+1
for /f "tokens=%unx% delims= " %%i in ('echo %nu%')do echo %n% %%i %unx%
goto _loop
:_end
是这个样子???
还是set nu= a-z + 1-26
set unx=%random%%%52+1 ????
Last edited by daker on 2008-8-25 at 12:06 AM ]
@echo off
setlocal EnableDelayedExpansion
set nu=a b c d e f g h i j k l m n o p q r s t u v w x y z
set n=0
:_loop
if %n% geq 10 (goto _end)
set /a n=%n%+1
set /a unx=%random%%%26+1
for /f "tokens=%unx% delims= " %%i in ('echo %nu%')do echo %n% %%i %unx%
goto _loop
:_end
Is this the case???
Or set nu= a-z + 1-26
set unx=%random%%%52+1 ????
Last edited by daker on 2008-8-25 at 12:06 AM ]
|
|
2008-8-24 23:51 |
|
|
pusofalse
银牌会员
    
积分 1604
发帖 646
注册 2008-4-13
状态 离线
|
『第 13 楼』:
使用 LLM 解释/回答一下
楼主的意思是如果已经出现了3,就不能再出现3,不能出现c。
a-1 b-2 c-3。。。 都是一一对应的。
The LZ means that if 3 has already appeared, then 3 cannot appear again, and c cannot appear. a-1, b-2, c-3... are all in one - to - one correspondence.
|

心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^ |
|
2008-8-25 01:21 |
|
|
BC
中级用户
  
积分 338
发帖 175
注册 2007-10-21
状态 离线
|
『第 14 楼』:
使用 LLM 解释/回答一下
@echo off
setlocal enabledelayedexpansion
set num=1234567890
set wor=abcdefghijklmnopqrstuvwxyz
:a1
set /a var1=%random%%%26+1
set /a var2=%random%%%9+1
if %var1% equ %var2% (goto :a1)
if %var1% lss 1 ( goto :a1 )
set key1=!wor:~%var1%,9!
set key2=!num:~%var2%,1!
echo %key1%%key2%
pause
搞了个很偷懒的方法,而且也不是很符合题意,但小弟的能力就是那么多。。。
希望有高人指点...
@echo off
setlocal enabledelayedexpansion
set num=1234567890
set wor=abcdefghijklmnopqrstuvwxyz
:a1
set /a var1=%random%%%26+1
set /a var2=%random%%%9+1
if %var1% equ %var2% (goto :a1)
if %var1% lss 1 ( goto :a1 )
set key1=!wor:~%var1%,9!
set key2=!num:~%var2%,1!
echo %key1%%key2%
pause
Got a very lazy method, and it's not very in line with the topic, but my ability is just that much...
Hope some experts can give guidance...
|

C:\
C:\Del BC |
|
2008-8-25 08:53 |
|
|
qq152576450
新手上路
 新手上路
积分 6
发帖 3
注册 2008-8-21 来自 川
状态 离线
|
『第 15 楼』:
使用 LLM 解释/回答一下
@echo off
Setlocal Enabledelayedexpansion
set _w=0abcdefghijklmnopqrstuvwxyz
set _p=0
for /l %%i in (1 1 26) do (set w%%i=!_w:~%%i,1!
set _w%%i=%%i)
:xz
set /a _p+=1
if %_p%==11 goto show
set /a xzx=%random%%%2
set /a xzp=%random%%%26+1
if %xzx%==0 set show%_p%=%xzp%
if %xzx%==1 set show%_p%=!w%xzp%!
goto xz
:show
for /l %%i in (1,1,10) do set /p =!show%%i! <nul
pause>nul
但不能判断是否重复....
望前辈指教
```batch
@echo off
Setlocal Enabledelayedexpansion
set _w=0abcdefghijklmnopqrstuvwxyz
set _p=0
for /l %%i in (1 1 26) do (set w%%i=!_w:~%%i,1!
set _w%%i=%%i)
:xz
set /a _p+=1
if %_p%==11 goto show
set /a xzx=%random%%%2
set /a xzp=%random%%%26+1
if %xzx%==0 set show%_p%=%xzp%
if %xzx%==1 set show%_p%=!w%xzp%!
goto xz
:show
for /l %%i in (1,1,10) do set /p =!show%%i! <nul
pause>nul
但不能判断是否重复....
望前辈指教
```
|
|
2008-8-25 10:15 |
|