1

Как бы я создал командный файл с прерывистым циклом? В настоящее время у меня есть файл с каким-то матриксным чувством, который делает это ...

:start

echo %random%%random%%random%%random%

goto start

но я бы тоже хотел сделать так, чтобы на экране clr , а затем отображалось множество восклицательных знаков, что-то вроде ошибки типа сделки, такой как

:start

echo !!!!!!!!!!...etc

goto start

но как сделать такой прерывистый цикл?

... напомню, я слишком новичок, так что я был бы благодарен за немного более особую обработку в области объяснения каждой строки. Спасибо :)..

1 ответ1

2

Ваш вопрос несколько неясен, но я предполагаю, что вы хотите, чтобы программа отображала ошибку в случайное время. Для этого вы можете использовать генератор случайных чисел.

set /a rndm=%random% * 10 / 32768 + 1

Этот код создаст переменную с именем "rndm" (это не обязательно должно называться rndm, вы можете назвать ее как угодно), которая является случайным числом от 1 до 10. Если вы хотите увеличить или уменьшить пул возможных чисел, вы можете изменить 10 в коде на любое другое. Так что если вы хотите случайное число от 1 до 3, вы должны сделать это:

set /a rndm=%random% * 3 /32768 + 1

Вы можете использовать это, чтобы генерировать случайную вероятность возникновения ошибки. Если вы хотите иметь шанс 1 на 10 выйти из цикла, очистить экран и войти в другой цикл, вы бы хотели, чтобы ваш код выглядел следующим образом:

@echo off :start echo %random%%random%%random%%random% set /a rndm=%random% * 10 / 32768 + 1 if %rndm% == 1 goto errorstart goto start :errorstart cls :error echo !!!!!!!!!!!! goto error

Во время выполнения цикла программа генерирует случайное число от 1 до 10. Сразу после этого он проверяет, сгенерировано ли это число 1. Если это не 1, он продолжает цикл. Если это так, он переходит к метке "errorstart". Команда под меткой ошибки запуска очищает экран. Затем программа входит в цикл ошибок, где выводит восклицательные знаки до тех пор, пока программа не будет закрыта.

Этот код должен дать вам эффект, который вы ищете, но 1 из 10 слишком велик для программы, работающей так быстро, поэтому вы можете изменить это значение на 1 из 1000 или 1 из 10.000. Это должно сделать начальный цикл дольше, прежде чем второй цикл начнет работать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .