批處理隨機取值練習(xí)代碼
更新時間:2010年10月11日 13:34:15 作者:
掌握利用random進行隨機取值技巧,需要的朋友可以參考下。
出題目的:
掌握利用random進行隨機取值技巧
解題要求:
代碼通用、高效
盡量簡潔
盡量不生成臨時文件
加分規(guī)則:
1 思路獨特基準分5分
2 代碼高效、通用基準分4分
3 技巧高超基準分3分
4 代碼簡潔基準分2分
5 完美代碼加分15分
題目如下:
已知有1-26與a-z的一一對應(yīng),如1對應(yīng)a 10對應(yīng)j 26對應(yīng)z,要求用批處理
從1-26 a-z這52個值中(全視為值)隨機抽取10個互不相同的值并顯示出來,
注意如同1和a 24和x 26和z這樣的取值均視為相同不合要求。
解題限制:
暫無限制。
答案:
batman:
@echo off&setlocal enabledelayedexpansion
for %%i in (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) do (
set /a n+=1,a=!random!%%2
if !a! equ 0 (
set "_!random!!random!!random!=%%i"
) else (
set "_!random!!random!!random!=!n!"
)
)
for /f "tokens=2 delims==" %%i in ('set _') do (
set /a n-=1
if !n! equ 15 pause>nul&goto :eof
set /p=%%i <nul
)
掌握利用random進行隨機取值技巧
解題要求:
代碼通用、高效
盡量簡潔
盡量不生成臨時文件
加分規(guī)則:
1 思路獨特基準分5分
2 代碼高效、通用基準分4分
3 技巧高超基準分3分
4 代碼簡潔基準分2分
5 完美代碼加分15分
題目如下:
已知有1-26與a-z的一一對應(yīng),如1對應(yīng)a 10對應(yīng)j 26對應(yīng)z,要求用批處理
從1-26 a-z這52個值中(全視為值)隨機抽取10個互不相同的值并顯示出來,
注意如同1和a 24和x 26和z這樣的取值均視為相同不合要求。
解題限制:
暫無限制。
答案:
batman:
復(fù)制代碼 代碼如下:
@echo off&setlocal enabledelayedexpansion
for %%i in (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) do (
set /a n+=1,a=!random!%%2
if !a! equ 0 (
set "_!random!!random!!random!=%%i"
) else (
set "_!random!!random!!random!=!n!"
)
)
for /f "tokens=2 delims==" %%i in ('set _') do (
set /a n-=1
if !n! equ 15 pause>nul&goto :eof
set /p=%%i <nul
)
相關(guān)文章
%1?mshta?vbscript之管理員權(quán)限運行bat的解讀
最近發(fā)現(xiàn)很多朋友咨詢%1?mshta?vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c?"^&chr(34)^&"%~0"^&chr(34)^&"?::","%cd%","runas",1)(window.close)&&exit的意思,這里就為大家簡單介紹一下2023-05-05查看系統(tǒng)網(wǎng)絡(luò)連接打開端口、系統(tǒng)進程、DOS打開文件的命令
這篇文章主要介紹了如何在DOS下查看系統(tǒng)網(wǎng)絡(luò)連接打開端口、打開的服務(wù)等2013-07-07批處理入門手冊之批處理常用DOS命令篇(echo、rem、cd、dir)
這篇文章主要介紹了批處理入門手冊之批處理常用DOS命令篇,需要的朋友可以參考下2016-11-11