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