Допустим, вы хотите число 1-5; Вы можете использовать следующее:
:LOOP
set NUM=%random:~-1,1%
if %NUM% GTR 5 (
goto LOOP )
goto NEXT
Или вы можете использовать: ~ 1,1 вместо: ~ -1,1. Символ: ~ -1,1 не требуется, но он значительно сокращает время, необходимое для достижения нужного диапазона. Допустим, вы хотите число 1-50, нам нужно выбрать между 2 цифрами и 1 цифрой. Использование:
:LOOP
set RAN1=%random:~-1,1%
if %RAN1% GTR 5 (
goto 1 )
if %RAN1%==5 (
goto LOOP )
goto 2
:1
set NUM=%random:~-1,1%
goto NEXT
:2
set NUM=%random:~-1,2%
goto NEXT
Вы можете добавить больше к этому алгоритму, чтобы выбирать между большими диапазонами, такими как 1-1000.