Турбо Паскаль! Помогите найти ошибку.error 85 ; expected и курсор переводит между real и...

0 голосов
45 просмотров

Турбо Паскаль! Помогите найти ошибку.error 85 ; expected и курсор переводит между real и = в массиве b uses crt; const a:array [1..4,1..4] of real=((5,3,2,1),(4,-1,2,-1),(3,7,-9,5),(-2,1,6,1)); var maxB, minB, maxA, MinA,y:real; i,j,sort,x:integer; b:array[1..9] of real=(4,2,-1,3,-9,5,-2,6,1); begin minA:=a[1,1]; maxA:=a[1,1]; for i:=1 to 4 do for j:=1 to 4 do begin if minA>a[i,j] then minA:=a[i,j]; if maxA end; writeln('minA=', minA); writeln('maxA=',maxA); writeln('nesortovaniy masiv:'); minB:=b[1]; maxB:=b[1]; for x:=1 to 9 do writeln(b[x],' '); begin if minB>b[x] then minB:=b[x]; if maxB end; writeln('minB=', minB); writeln('maxB=',maxB); writeln('sortovaniy masiv:'); y:=1; for sort:=1 to 9 do for x:=1 to 8 do if b[x]>b[x+1] then begin y:=b[x]; b[x]:=b[x+1]; b[x+1]:=y; end; for x:=1 to 9 do write(b[x],' '); readln; end.


Информатика (27 баллов) | 45 просмотров
0

кстати а разве в конце не должно быть Readkey а не readln?

0

В PascalABC.NET транслируется без ошибок, если отключить оператор uses crt;

0

Минимум и максимум в массиве В находится не правильно. Строку begin после строки writeln(b[x],' '); переместить перед строкой writeln(b[x],' '); и заменить writeln(b[x],' '); на write(b[x],' '); , чтобы выводилось в одну строку, добавить writeln; перед строкой writeln('minB=', minB);

Дан 1 ответ
0 голосов
Правильный ответ

uses crt;

const

   sizeA = 4;

   sizeB = 9;

   a: array [1..sizeA, 1..sizeA] of real = ((5, 3, 2, 1), (4, -1, 2, -1), (3, 7, -9, 5), (-2, 1, 6, 1));

var

   maxB, minB, maxA, minA, temp: real;

   i, j: integer;

   b: array[1..sizeB] of real = (4, 2, -1, 3, -9, 5, -2, 6, 1);

begin

   minA := a[1, 1];

   maxA := a[1, 1];

   for i := 1 to sizeA do

       for j := 1 to sizeA do

       begin

           if minA > a[i, j] then minA := a[i, j];

           if maxA < a[i, j] then maxA := a[i, j];

       end;

   writeln('minA=', minA);

   writeln('maxA=', maxA);

   

   writeln('nesortovaniy masiv:');

   minB := b[1];

   maxB := b[1];

   for i := 1 to sizeB do  

   begin

       write(b[i], ' ');

       if minB > b[i] then minB := b[i];

       if maxB < b[i] then maxB := b[i];

   end;

   writeln;

   writeln('minB=', minB);

   writeln('maxB=', maxB);

   

   writeln('sortovaniy masiv:');

   for j := 1 to sizeB - 1 do

       for i := 1 to sizeB - j do

           if b[i] > b[i + 1] then

           begin

               temp := b[i];

               b[i] := b[i + 1];

               b[i + 1] := temp;

           end;

   

   for i := 1 to sizeB do

       write(b[i], ' ');

   

   readln;

end.

(55.0k баллов)