Задать вопрос

1) Дана матрица размером M * N. В каждой строке матрицы найти минимальный элемент и максимальный из найденного. 2) дана матрица размерами N * N. Поменять местами столбец с максимальным и столбец содержащий минимальное количество нулевых элементов. Использовать три процедуры (заполнение, смена, вывод).

+3
Ответы (1)
  1. 2 апреля, 04:29
    0
    1)

    program Example;

    const

    m=6; / /количество столбцов

    n=5; / /количество строк

    minM=-10; / /минимальное число в матрице

    maxM=10; / /максимальное число в матрице

    var

    i, j:integer;

    A : array [1 ... M, 1 ... N] of integer;

    min, max:integer;

    begin

    randomize;

    writeln ('Сгенерированная матрица ', M, 'x', N, ':');

    for i : = 1 to M do begin

    for j : = 1 to N do begin

    a[i, j] : = minM + random (maxM-minM+1);

    write (a[i, j]:4)

    end;

    writeln;

    end;

    writeln ('Минимальный и максимальный элементы в строках:');

    for i : = 1 to M do begin

    min : = a[i, 1]; / /начальное значание для минимального значения

    max : = a[i, 1]; / /начальное значание для максимального значения

    for j : = 2 to N do

    begin

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

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

    end;

    write ('В ', i, ' строке: ');

    write ('минимальный элемент = ', min);

    writeln (' максимальный элемент = ', max);

    end;

    end.

    2)

    program Example;

    const

    m=6; / /количество столбцов

    n=5; / /количество строк

    minM=-2; / /минимальное число в матрице

    maxM=2; / /максимальное число в матрице

    var

    i, j:integer;

    A : array [1 ... M, 1 ... N] of integer;

    min, max:integer;

    numMin, numMax, k, Kmin, Kmax:integer;

    procedure gen ();

    begin

    randomize;

    for i : = 1 to M do begin

    for j : = 1 to N do begin

    a[i, j] : = minM + random (maxM-minM+1);

    end;

    end;

    end;

    procedure print ();

    begin

    writeln ('Матрица ', M, 'x', N, ':');

    for i : = 1 to M do begin

    for j : = 1 to N do begin

    write (a[i, j]:4)

    end;

    writeln;

    end;

    end;

    procedure change ();

    var

    t:integer;

    begin

    for i : = 1 to M do begin

    t:=a[i, numMin];

    a[i, numMin]:=a[i, numMax];

    a[i, numMax]:=t;

    end;

    end;

    begin

    gen ();

    print ();

    numMin:=1; / /начальный номер столбца

    numMax:=1;

    Kmin:=M;

    Kmax:=0;

    for j : = 1 to N do begin

    k:=0;

    for i : = 1 to M do

    begin

    if a[i, j] = 0 then k:=k+1;

    end;

    if k
    begin

    Kmin:=k;

    numMin:=j;

    end;

    if k>Kmax then

    begin

    max:=k;

    numMax:=j;

    end;

    end;

    change ();

    print ();

    end.
Знаешь ответ на этот вопрос?
Сомневаешься в правильности ответа?
Получи верный ответ на вопрос 🏆 «1) Дана матрица размером M * N. В каждой строке матрицы найти минимальный элемент и максимальный из найденного. 2) дана матрица размерами N ...» по предмету 📕 Информатика, используя встроенную систему поиска. Наша обширная база готовых ответов поможет тебе получить необходимые сведения!
Найти готовые ответы
Похожие вопросы информатике
Дана матрица A (n, n) Получить новую матрицу путем деления всех элементов матрицы на элемент, значение которого равно разности между максимальным и минимальными элементами
Ответы (1)
Дан двумерный массив a, размером (n&#61620; m). Найти максимальный элемент в каждой строке матрицы среди положительных элементов.
Ответы (1)
Дан массив B (n*m). Элементы массива ввести в программе. Поменять местами максимальный и минимальный элемент. Паскаль двумерный массив пример присвоения элементов массива в программе : b: array[1 ... n, 1 ...
Ответы (1)
Введите с клавиатуры одномерный числовой массив из 9 элементов. Сверните его в матрицу размером 3x3, разместив первую тройку элементов в 1-й строке матрицы, 2-ю тройку - во второй строке, 3-ю тройку - в третьей строке.
Ответы (1)
Дана целочисленная прямоугольная матрица 6*8. Вычислить количество нулевых ячеек матрицы.
Ответы (1)