Последний отрицательный элемент каждого столбца матрицы заменить нулем - Free Pascal
Формулировка задачи:
Дан двумерный массив. Выполнить следующее преобразование: последний отрицательный элемент каждого столбца заменить нулем.
Решение задачи: «Последний отрицательный элемент каждого столбца матрицы заменить нулем»
textual
Листинг программы
var N, k: longint; A: array of array of longint; procedure InputArray; begin Write('‚Введите числа* M и N (Размеры матрицы MxN):'); Readln(N, k); SetLength(A, N + 1, k + 1); Writeln('Введите матрицу(M строк по N чисел через пробел)*:'); for n := 1 to n do for k := 1 to k do Read(A[n, k]); end; procedure ChangeArray ; var last: longint; begin for k := 1 to k do begin last := 0; for N := 1 to N do if A[n, k] < 0 then last := N; if last <> 0 then A[last, k] := 0; end; end; procedure OutPutArray; begin Writeln('Новая матрица: '); for N := 1 to N do begin for k := 1 to k do Write(A[n, k], ' '); Writeln; end; readln; end; begin InputArray; ChangeArray; OutputArray; readln; end.
Объяснение кода листинга программы
В данном коде представлена программа на языке программирования Free Pascal, которая выполняет следующие действия:
- Ввод размеров матрицы (N строк, k столбцов) и ввод матрицы (N строк, k столбцов).
- Ввод последнего отрицательного элемента каждого столбца матрицы.
- Вывод новой матрицы, в которой последний отрицательный элемент каждого столбца заменен нулем. Вот список действий, которые выполняются в коде:
- Ввод размеров матрицы (N строк, k столбцов):
- Запрос на ввод чисел N и k.
- Ввод N и k с помощью функции Readln.
- Установка длины массива A равной N + 1 и k + 1 с помощью функции SetLength.
- Ввод матрицы (N строк, k столбцов):
- Запрос на ввод матрицы (N строк, k столбцов).
- Ввод элементов матрицы с помощью двух вложенных циклов и функции Read.
- Поиск последнего отрицательного элемента каждого столбца:
- Создание переменной last типа longint и инициализация ее значением 0.
- Два вложенных цикла, которые проходят по всем элементам матрицы.
- Если элемент A[n, k] отрицательный, то его значение присваивается переменной last.
- Если значение last не равно 0, то элемент A[last, k] заменяется нулем.
- Вывод новой матрицы:
- Запрос на вывод новой матрицы.
- Два вложенных цикла, которые проходят по всем элементам матрицы.
- Вывод каждого элемента матрицы с помощью функции Write.
- Переход на новую строку с помощью функции Writeln.
- Ввод для завершения работы программы:
- Ввод для завершения работы программы с помощью функции Readln.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д