Ошибка fatal: syntax error identifier expected - Free Pascal

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

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

program AAG_7;
 Uses CRT;
Var AA: Array[1..8,1..4] of Integer;
I,J,:Integer;
Imx,Imn,maxSum,minSum,rowSum,Buf,SumStr,SumAll:Integer;
 Procedure ZAP;
 Begin
 Randomize;
For I:=1 To 8 Do
    For J:=1 To 4 Do AA[I,J]:=Random(41)-20;
End;
   Procedure PrintArr;
   Begin
   For I:=1 To 8 Do Begin
                    For J:=1 To 4 Do Write(AA[I,J]:5);
                    WriteLn;
                    End;
END;
      Procedure Sum;
      Begin
      SumAll:=0;
      Imn:=1;
      Imx:=1;
      maxSum:=-700;
      minSum:=700;
       For I:=1 To 8 Do Begin
                        rowSum:=0;
                        For J:=1 To 4 Do Begin
                                         rowSum:=rowSum+AA[I,J];
                         If rowSum>maxSum then Begin
                             maxSum:=rowSum;
                             Imx:=I;
                             End;
       If rowSum<minSum then Begin
                             minSum:=rowSum;
                             Imx:=I;
                              End;
 
      WrireLn('SumStr',I:4,'rowSum');
      End;
        For J:=1 To 4 Do
        Begin
             Buf:=AA[Imn,J];
             AA[Imn,J]:=AA[Imx,J];
             AA[Imx,J]:=Buf;
             End;
 
      WriteLn;
End.

Решение задачи: «Ошибка fatal: syntax error identifier expected»

textual
Листинг программы
Program AAG_7;
 
Uses CRT;
 
Var AA:  Array[1..8,1..4] Of Integer;
 
Var 
   I,J:  Integer;
   Imx,Imn,maxSum,minSum,rowSum,Buf,SumStr,SumAll:  Integer;
Procedure ZAP;
Begin
   Randomize;
   For I:=1 To 8 Do
      For J:=1 To 4 Do
         AA[I,J] := Random(41)-20;
End;
Procedure PrintArr;
Begin
   For I:=1 To 8 Do
   Begin
      For J:=1 To 4 Do
         Write(AA[I,J]:5);
      WriteLn;
   End;
End;
Procedure Sum;
Begin
   SumAll := 0;
   Imn := 1;
   Imx := 1;
   maxSum := -700;
   minSum := 700;
   For I:=1 To 8 Do
   Begin
      rowSum := 0;
      For J:=1 To 4 Do
      Begin
         rowSum := rowSum+AA[I,J];
         If rowSum>maxSum Then
         Begin
            maxSum := rowSum;
            Imx := I;
         End;
         If rowSum<minSum Then
         Begin
            minSum := rowSum;
            Imx := I;
         End;
 
         WriteLn('SumStr',I:4,'rowSum');
      End;
      For J:=1 To 4 Do
      Begin
         Buf := AA[Imn,J];
         AA[Imn,J] := AA[Imx,J];
         AA[Imx,J] := Buf;
      End;
 
      WriteLn;
   End.

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

  1. Объявлены переменные:
    • AA: Array[1..8,1..4] Of Integer;
    • I, J: Integer;
    • Imx, Imn, maxSum, minSum, rowSum, Buf, SumStr, SumAll: Integer;
  2. Выполняется процедура ZAP, которая инициализирует массив AA случайными значениями.
  3. Выполняется процедура PrintArr, которая выводит на экран все значения массива AA.
  4. Выполняется процедура Sum, которая выполняет суммирование элементов каждой строки массива AA и находит максимальную и минимальную сумму. Также процедура выполняет перестановку элементов в строке с минимальной суммой на позицию строки с максимальной суммой.
  5. Переменная SumAll инициализируется нулем.
  6. Переменные Imn и Imx инициализируются единицей.
  7. Переменные maxSum и minSum инициализируются значением -700.
  8. Цикл выполняется для каждой строки массива AA.
  9. Внутри цикла выполняется другой цикл, который суммирует элементы текущей строки.
  10. Если текущая сумма больше maxSum, то обновляются значения maxSum, Imx.
  11. Если текущая сумма меньше minSum, то обновляются значения minSum, Imx.
  12. Выводится на экран значение текущей суммы.
  13. Цикл выполняется для каждой строки массива AA.
  14. Внутри цикла выполняется другой цикл, который ищет пару элементов для перестановки.
  15. Переменная Buf инициализируется значением элемента в позиции (Imn,J).
  16. Элемент в позиции (Imn,J) заменяется на значение элемента в позиции (Imx,J).
  17. Элемент в позиции (Imx,J) заменяется на значение переменной Buf.
  18. Выводится на экран результат.

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


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

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

8   голосов , оценка 4.125 из 5