Ошибка в инструкции. Не знаю как исправить - Turbo Pascal

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

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

Помогите пожалуйста исправить ошибку на первом else "else g:=g+1;". Буду рад если напишите, в чем была ошибка. Ошибка 113: ошибка в инструкции

Решение задачи: «Ошибка в инструкции. Не знаю как исправить»

textual
Листинг программы
program steklo;
  uses crt;
  var a,n,g:integer; b:array[0..1000]of integer;
 
begin
  clrscr;
  g:=0;
  read(n);
  if (n<1) or (n>2000) then exit;
 
  for a:= 0 to 6*n do read(b[a]);
  write(b[a]);
  write(' ',a);
  readkey;
  repeat
    repeat
      if sqrt(sqr(b[1]-b[2])+sqr(b[3]-b[4]))=
         sqrt(sqr(b[7]-b[8])+sqr(b[9]-b[10])) {formula dliny storony}
      then
        begin
          b[7]:=b[7+2];
          b[8]:=b[8+2];
          b[9]:=b[9+2];
          b[10]:=b[10+2];
        end
      else
        g:=g+1;
    until true;
 
    b[1]:=b[1+2];
    b[2]:=b[2+2];
    b[3]:=b[3+2];
    b[4]:=b[4+2];
  until true;
 
  if (g>((3*n)-n*2))
  then
    begin
      writeln('nelsya sobrat`');
      readkey;
      exit;
    end
  else writeln('mojjno sobrat`');
  readkey;
end.

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

Этот код написан на языке Turbo Pascal. Он выполняет следующие действия:

  1. Инициализирует переменные a, n, g:integer; b:array[0..1000]of integer;
  2. Очищает экран.
  3. Устанавливает значение переменной g равным 0.
  4. Считывает значение переменной n. Если n меньше 1 или больше 2000, программа завершается.
  5. Запускается цикл for, который выполняется 6*n раз. На каждой итерации считывается значение переменной b[a] и выводится на экран. Затем выводится пробел и считывается значение key.
  6. Повторяется внутренний цикл, пока не будет выполнено условие sqrt(sqr(b[1]-b[2])+sqr(b[3]-b[4]))=sqrt(sqr(b[7]-b[8])+sqr(b[9]-b[10])) или sqrt(sqr(b[7]-b[8])+sqr(b[9]-b[10]))=sqrt(sqr(b[1]-b[2])+sqr(b[3]-b[4])) и b[7], b[8], b[9], b[10] не изменяются.
  7. Если внутренний цикл завершается, выводится сообщение nelsya sobratили mojjno sobrat в зависимости от того, было ли выполнено условие или нет.
  8. Выводится символ key.
  9. Цикл for повторяется до тех пор, пока не будет выполнено условие (g>((3n)-n2)).
  10. Если условие выполняется, выводится сообщение nelsya sobratи программа завершается. Если условие не выполняется, выводится сообщение mojjno sobrat и программа продолжается.

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


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

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

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