Реализация защиты ввода от дурака - PascalABC.NET
Формулировка задачи:
Доброго времени суток! Имеется тривиальная программа
И необходимо реализовать защиту от юзера - дурака, который в байтовую переменную попытается забить что-то вроде 999999999999 или пишет вместо циферок буковки\значки. При этом прога должна не упасть с ошибкой и послать юзера в лес предложить ввести нормальное значение.
Листинг программы
- var
- a:byte;
- begin
- Readln(a);
- end.
Решение задачи: «Реализация защиты ввода от дурака»
textual
Листинг программы
- var
- a: byte;
- error: boolean;
- begin
- repeat
- error := false;
- try
- Readln(a);
- except
- error := true;
- writeln('Вводим значения 0 .. 255');
- end;
- until not error;
- // ...
- end.
Объяснение кода листинга программы
- Объявлены две переменные:
a
типа byte иerror
типа boolean. - Запускается цикл repeat-until, который будет выполняться до тех пор, пока
error
не станет равным false. - Внутри цикла устанавливается значение
error
в false. - В блоке try выполняется операция чтения значения с помощью Readln(a).
- В блоке except перехватывается исключение, которое возникает при неверном вводе значения.
- Значение
error
устанавливается в true, а в консоль выводится сообщениеВводим значения 0 .. 255
. - После выхода из блока try-except проверяется значение
error
. Если оно равно true, то цикл повторяется. Если false, то цикл завершается. - Код, который должен выполняться после цикла, помещен в комментарий
// ...
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д