Нужно поменять местами макс. и мин. значения. Что не так? PROGRAM MATRICA; USES CRT;...

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

Нужно поменять местами макс. и мин. значения. Что не так?

PROGRAM MATRICA;
USES CRT;
CONST N=3; M=4; A=-20; B=20;
VAR I, J, MIN, MAX, T: INTEGER;
Y:ARRAY [1..N, 1..M] OF INTEGER;
BEGIN
CLRSCR;
RANDOMIZE;
WRITELN('MATRICA Y');
MIN:=0;
MAX:=0;
T:=0;
FOR I:=1 TO N DO BEGIN
FOR J:=1 TO M DO BEGIN
Y[I,J]:=TRUNC((B-A)*RANDOM+A);
WRITE(Y[I,J]:6);
IF Y[I,J]MAX THEN MAX:=Y[I,J];
END; WRITELN; END;
WRITELN('Минимальное значение = ', MIN);
WRITELN('Максимальное значение = ', MAX);
T:=MIN;
MIN:=MAX;
MAX:=T;
FOR I:=1 TO N DO BEGIN
FOR J:=1 TO M DO BEGIN
WRITE(Y[I,J]:6);
END; WRITELN; END;
READKEY;
END.


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

Зачем используешь Trunc, если у тебя массив из целых чисел?)

0

Trunc используется при приведении типов из Real в Integer. Т.е отбрасывает все цифры после запятой. К примеру если a:real;

0

a:=5.12, то trunc(a)=5

Дан 1 ответ
0 голосов

Program matrix;
var  A: array[1..10, 1..10] of integer;
i, j, mini, minj, maxi, maxj, temp: integer;
begin  Randomize;
  for i := 1 to 10 do  begin
    for j := 1 to 10 do    begin
      A[i, j] := random(100);
      write(A[i, j], ' ');
   end;
   writeln;
   end;
   mini := 1;
   minj:=1;
   maxi := 1;
   maxj:=1;
   for i := 1 to 10 do 
   for j := 1 to 10 do
    begin 
     if A[i, j] < A[mini,minj] then  begin 
      mini := i;
      minj := j;
     end;
      if A[i, j] > A[maxi,maxj] then      begin
       maxi := i;
       maxj := j;
      end;
      end;
      WriteLn('min = ',A[mini,minj],' это ',mini,' ряд ',minj,' столбца.' );
      WriteLn('max = ',A[maxi,maxj],' это ',maxi,' ряд ',maxj,' столбца.' );
       temp := A[maxi, maxj];
       A[maxi, maxj] := A[mini, minj];
       A[mini, minj] := temp;
       writeln;
       for i := 1 to 10 do  begin
        for j := 1 to 10 do
         write(A[i, j], ' ');
         writeln;
       end; 
       readln;
       end.
temp - переменная для временного хранения минимальных и максимальных элементов.

(1.8k баллов)