Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.05.2015, 20:17   #1
Roblen
 
Регистрация: 21.03.2015
Сообщений: 3
Вопрос Помогите исправить ошибку в программе pascalABC.net

Программа-тест. Первый вопрос запускает а дальше не идет, не знаю как сделать так, чтобы она выводила следующий ответ, вела проверку правильности ответа.

Код:
var
  
  answer, k, n, l, point: integer;
  questions: array [1..3] of string;
  answers: array [1..12, 1..4] of string;
  correct_answers: array [1..3] of integer;

begin
  questions[1] := 'Что такое алгоритм?';
  answers[1, 1] := 'конечный список объектов,  необходимых для выполнения конкретной работы в установленный срок';
  answers[1, 2] := 'конечный набор правил, который определяет последовательность операций для решения конкретного множества задач';
  answers[1, 3] := 'набор инструкций, описывающих порядок действий исполнителя для достижения результата, имеющий особые правила';
  answers[1, 4] := 'последовательность команд, задаваемая пользователем, команды исполняются компьютером в строго определенном порядке';
  correct_answers[1] := 2;
  
  questions[2] := '. Что из перечисленного не относиться к свойствам алгоритма?';
  answers[2, 1] := 'массовость';
  answers[2, 2] := 'конечность';
  answers[2, 3] := 'дискретность';
  answers[2, 4] := 'актуальность';
  correct_answers[2] := 4;
  
  questions[3] := 'Как называется алгоритм в котором команда или серия команд повторяется?';
  answers[3, 1] := 'циклический';
  answers[3, 2] := 'линейный';
  answers[3, 3] := 'разветвляющийся';
  answers[3, 4] := 'бесконечный ';
  correct_answers[3] := 1;
  
  writeln('Ответом на вопрос теста является номер варианта ответа');  
  point := 0; k := 1;
  
  begin
    for l := 1 to k do    
      if n <>  correct_answers[l] then
      begin
        correct_answers[k] := n; k := k + 1; 
        begin
          
          writeln('ТЕМА ', questions[n + 1]);
          
          writeln('    1)  ', answers[n + 1, 1]);
          writeln('    2)  ', answers[n + 1, 2]);
          writeln('    3)  ', answers[n + 1, 3]);
          writeln('    4)  ', answers[n + 1, 4]);
          write('ОТВЕТ: '); readln(answer); writeln('');
          if answer = correct_answers[n + 1] then point := point + 1
          else writeln('Ответ неверный, верный ответ: ',correct_answers[n+1]); 
        end;
      end
      else k := k;
  end;
  writeln('Ваш результат ', point, ' баллов');
end.

Последний раз редактировалось Аватар; 18.05.2015 в 20:21.
Roblen вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите исправить ошибку в программе!! ssergey100 Windows 8 25.08.2014 12:10
Помогите исправить ошибку в программе(С++) DimaR123 Visual C++ 3 04.03.2014 21:19
Помогите исправить ошибку в программе Paul_AG Общие вопросы C/C++ 12 24.03.2009 19:36
ПОМОГИТЕ исправить ошибку в программе SYL@R Помощь студентам 1 07.12.2008 19:42
ПОМОГИТЕ исправить ошибку в программе SYL@R Помощь студентам 1 21.11.2008 14:48