дана целочисленная квадратная матрица. найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали

Ответы

Free Pascal:

const N = 10;
type matrix = array[1..N, 1..10] of integer;
var a: matrix;
i, j, k, max: integer;
 
begin
        randomize;
        for i := 1 to N do begin
                for j := 1 to N do begin
                        a[i, j] := random(10);
                end;
        end;
        
        for i := 1 to N do begin
                for j := 1 to N do begin
                        write(a[i, j], ' ');
                end;
                writeln;
        end;
        writeln;
 
        for i := 1 to N do begin
                k := 1;
                max := a[i, k];
                for j := 2 to N do begin
                        if (a[i, j] > max) then begin
                                k := j;
                                max := a[i, k];
                        end;
                end;
                a[i, i] := a[i, i] + a[i, k];
                a[i, k] := a[i, i] — a[i, k];
                a[i, i] := a[i, i] — a[i, k];
        end;
 
        for i := 1 to N do begin
                for j := 1 to N do begin
                        write(a[i, j], ' ');
                end;
                writeln;
        end;
        writeln;
end.
07.06.16
Рекомендуем личную консультацию

Елена Васильевна

Сейчас на сайте
Меня зовут Елена Васильевна, я репетитор по математике из г. Гомель (Беларусь). Занимаюсь со школьниками (8 по 11 класс), а также со студентами.
Посмотреть всех экспертов из раздела Учеба и наука > Информатика