ПожалуйстаРазработать алгоритм и написать программу ** языке TURBO PASCAL Сформировать...

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

Пожалуйста
Разработать алгоритм и написать программу на языке TURBO PASCAL
Сформировать одномерный массив из элементов массива двумерного по указанному в
варианте правилу и упорядочить элементы созданного массива. Числа M и N вводятся с клавиатуры.
Для задания исходной матрицы предусмотреть два варианта: ввод с клавиатуры и ввод с помощью
датчика случайных чисел. Возможность выбора пользователем варианта ввода матрицы должна быть
предусмотрена в тексте программы.
Сформировать массив В из: Произведений элементов четных столбцов массива А (m, n) Отсортировать массив по
убыванию.


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

PascalABC.Net пойдет, а то больно заморочливо писать на голом паскале

0

для программы Pascal ABC

0

спасибо

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

Var
    a: array [,] of integer;

begin
    var n := ReadlnInteger('n = ');
    var m := ReadlnInteger('m = ');
    var rand := ReadlnInteger('Для ручного ввода нажмите 0');
    
    if rand = 0 then begin
        a := new integer[m, n];
        for var i := 0 to m-1 do
            for var j := 0 to n-1 do
                a[i, j] := ReadlnInteger('a[' + i + ',' + j + '] = ');
    end
    else a := MatrixRandom(m, n, 1, 100);
    Println(a);
    
    var b := ArrGen(n, x -> 1);
    for var i := 0 to m-1 do
        for var j := 0 to n-1 do
            if j mod 2 = 0 then
                b[j] := b[j] * a[i, j];
    
    b.Where((x, i)-> i mod 2 = 0).SortedDescending().Println();
end.

(53.1k баллов)
0

PascalAbc.Net 3.1 сборка 1200