Подскажите как добавить сюда защиту от дурака. Pascal.
Есть код легенького теста на паскале, нужно добавить защиту от дурака, чтобы если человек вводит числа/буквы которые не подходят, ему писало, что вы ввели наверное число, используйте только английские A,B,C,D.
Можно использовать repeat, while, goto и т.п. Я туплю, не могу сделать нормально.
12345678910
writeLn('1. К автоматизированным обучающим системам относятся: ');
writeLn('A. автоматизированные архивы');
writeLn('B. информационно-расчетные системы');
writeLn('C. системы автоматизации проектирования');
writeLn('D. тренажеры и тренажерные комплексы');
Write('Ваш ответ: ');
ReadLn(answer);
if (answer = 'D') or (answer = 'd') then begin
right := right +1;
end;
Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
12345678910111213141516171819202122232425262728293031323334
program Test;
var
answer: Char;
right: Integer;
begin
right := 0;
writeln('1. К автоматизированным обучающим системам относятся: ');
writeln('A. автоматизированные архивы');
writeln('B. информационно-расчетные системы');
writeln('C. системы автоматизации проектирования');
writeln('D. тренажеры и тренажерные комплексы');
repeat
Write('Ваш ответ: ');
ReadLn(answer);
// Проверка на правильность ввода
case UpCase(answer) of
'A', 'B', 'C', 'D':
begin
if UpCase(answer) = 'D' then
right := right + 1;
end;
else
writeln('Вы ввели неверный ответ. Пожалуйста, используйте только A, B, C, D.');
end;
until (UpCase(answer) = 'A') or (UpCase(answer) = 'B') or (UpCase(answer) = 'C') or (UpCase(answer) = 'D');
writeln('Правильных ответов: ', right);
end.