Ограничить количество попыток ввода - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Пишу программу-тест. Необходимо сделать так, что бы при трёх неправильных ответах на один вопрос, программа переходила к следующему. Каким образом это можно сделать?

Решение задачи: «Ограничить количество попыток ввода»

textual
Листинг программы
res:=0;
for i:=1 to n do
 begiin
  k:=0;
  repeat
  writeln('Вопрос ',i);
  readln(otv);
  if otv=pravilno then
   begin
    k:=3;
    res:=res+1
   end
  else k:=k+1;
  until k=3;
 endl;

Объяснение кода листинга программы

В этом коде используется цикл for для выполнения повторяющихся действий. Этот цикл проходит от 1 до n (где n - это количество вопросов). Внутри цикла есть вложенный блок begin, который содержит код, выполняемый при каждой итерации цикла. Внутри вложенного блока begin есть еще один цикл repeat, который выполняется до тех пор, пока не будет введено правильное значение. Внутри этого цикла выводится вопрос (вопрос1, вопрос2 и т.д.), затем считывается ответ пользователя (otv). Если ответ правильный (otv = pravilno), то переменная k устанавливается в 3 и переменная res увеличивается на 1. Если ответ неправильный, то переменная k увеличивается на 1. Цикл repeat продолжается до тех пор, пока k не станет равным 3. После завершения внутреннего цикла repeat, в основном цикле for выполняется вывод (writeln) строки Вопрос,i, -, res, попыток и затем снова начинается следующая итерация цикла. Таким образом, этот код представляет собой простую программу для проверки ответов на вопросы. Программа будет продолжать задавать вопросы до тех пор, пока не получит правильный ответ.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.692 из 5
Похожие ответы