Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лабы / лаб4 / lab4_2

.pas
Скачиваний:
18
Добавлен:
27.03.2023
Размер:
2 Кб
Скачать
program lab4_2;
var
    n: integer = 10;
    A: array[1..10] of array[1..10] of integer;
    main_branch: array[1..10] of integer;
    i,j,shift,temp: integer;
begin
    randomize;

    for i:=1 to n do
    begin
        for j:=1 to n do
        begin
            if (i mod 2 <> 0) then A[i][j] := (3*(i-j)+8)
            else A[i][j] := random(100) - 100;
        end;
    end;

    WriteLn('Матрица A:');
    for i:=1 to n do
    begin
        for j:=1 to n do
        begin
            Write(A[i][j], ' ');
        end;
        WriteLn('');
    end;
    WriteLn('');

    shift := n;
    for i:=1 to n do
    begin
        main_branch[i] := A[i][shift];
        shift := shift - 1;
    end;

    Write('Главная диагональ: ');
    for i:=1 to n do Write(main_branch[i], ' ');
    WriteLn('');

    for i:=1 to n do
    begin
        for j:=1 to n-1 do
        begin
            if (main_branch[j] < main_branch[j+1]) then
            begin
                temp := main_branch[j];
                main_branch[j] := main_branch[j+1];
                main_branch[j+1] := temp;
            end;
        end;
    end;

    Write('Главная диагональ(отсортированная): ');
    for i:=1 to n do Write(main_branch[i], ' ');
    WriteLn('');

    shift := n;
    for i:=1 to n do
    begin
        A[i][shift] := main_branch[i];
        shift := shift - 1;
    end;

    WriteLn('Матрица A с отсортированной главной диагональю по убыванию:');
    for i:=1 to n do
    begin
        for j:=1 to n do
        begin
            Write(A[i][j], ' ');
        end;
        WriteLn('');
    end;
end.
Соседние файлы в папке лаб4