
Доработать программы:сделать контроль ввода пользователем(если пользователь 3 раза
ошибается-программа закрывается) program For16; var A,Rez:Real; N, i :Integer; begin Write('Введите A: '); Readln(A); Write('Введите N: '); Readln(N); Rez:=1; For i:=1 to N do begin Rez:=Rez*A; Writeln(Rez); end; end. Помогите пожалуйста

Ответы на вопрос

// Внимание! Если программа не работает, обновите версию!
begin;
var errs:=0;
var A,N:integer;
loop 3 do
try
(A,N):=ReadInteger2('Введите через пробел А и N:');
var Rez:=1;
for var i:=1 to N do Rez*=A;
Writeln(Rez);
Exit
except
errs+=1
end;
Writeln('Вы ошиблись трижды. Программа завершена')
end.
Примеры
Введите через пробел А и N: 2 6
64
Введите через пробел А и N: 2 3,5
Введите через пробел А и N: 2 3.5
Введите через пробел А и N: 2 a
Вы ошиблись трижды. Программа завершена



Конечно, я помогу вам доработать программу и добавить контроль ввода пользователя. Вот ваша доработанная программа на языке Pascal:
```pascal program For16;
var A, Rez: Real; N, i, ErrorCount: Integer;
begin ErrorCount := 0;
repeat Write('Введите A: '); try Readln(A); // Сброс счетчика ошибок при успешном вводе ErrorCount := 0; except // Обработка исключения при ошибочном вводе on E: Exception do begin writeln('Ошибка ввода: ', E.Message); Inc(ErrorCount); if ErrorCount >= 3 then begin writeln('Превышено количество попыток ввода. Программа будет закрыта.'); Exit; // Завершение программы при превышении лимита ошибок end; end; end; until ErrorCount = 0;
ErrorCount := 0; // Сброс счетчика ошибок перед вводом N
repeat Write('Введите N: '); try Readln(N); // Сброс счетчика ошибок при успешном вводе ErrorCount := 0; except // Обработка исключения при ошибочном вводе on E: Exception do begin writeln('Ошибка ввода: ', E.Message); Inc(ErrorCount); if ErrorCount >= 3 then begin writeln('Превышено количество попыток ввода. Программа будет закрыта.'); Exit; // Завершение программы при превышении лимита ошибок end; end; end; until ErrorCount = 0;
Rez := 1;
for i := 1 to N do begin Rez := Rez * A; Writeln(Rez); end; end. ```
В этой программе добавлен цикл `repeat...until`, который продолжает запрашивать ввод у пользователя до тех пор, пока не будет введено корректное значение или не будет достигнуто максимальное количество попыток ошибок (в данном случае, 3). Если количество ошибок превышает установленный лимит, программа выходит из выполнения.


Топ вопросов за вчера в категории Информатика








Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili