Как в Pascal Abc сделать контроль ввода данных? Так, что бы при вводе любого символа, кроме числа выдавало не ошибку, а говорила что "Введено не число" и возвращалось, чтоб заменить этот символ на цифру

Как в Pascal Abc сделать контроль ввода данных? Так, что бы при вводе любого символа, кроме числа выдавало не ошибку, а говорила что "Введено не число" и возвращалось, чтоб заменить этот символ на цифру
Гость
Ответ(ы) на вопрос:
Гость
Могу предложить такой вариант - в цикле repeat число вводится как строка и посимвольно проверяется. если введено неправильно - возвращает на ввод, если правильно - преобразует строку в число для дальнейшей работы. var   a,err: integer;   s: string;   i: byte;   error: boolean; begin   repeat   error:=true;   writeln ('введите число');   readln (s);   for i:=1 to length(s) do begin     if (ord(s[i])<48) or (ord(s[i])>57)       then begin error:=false; writeln ('введено не число'); break; end   end;   until error=true;   val(s,a,err);   writeln ('введено число ',a); end. ------------------------------ Пример: введите число 12O введено не число введите число 120 введено число 120
Не нашли ответ?
Ответить на вопрос
Похожие вопросы