Функция в программе, процедуры, зачетная - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Ребят, вот сама программа В ней процедуры Нужно написать функцию Возможно ли поменять изменить процедуры Ml и Md На функцию, или же, если не брать из процедур, то функцию иную написать? Спасите безумца, ибо зачетная работа и долго над ней уже безрезультатно сижу

Решение задачи: «Функция в программе, процедуры, зачетная»

textual
Листинг программы
program test;
 
type
  matr2 = array[1..6, 1..6] of integer;
 
  procedure CreateRandomMatrix(var A: Matr2; n, k: integer);
  var
    i, j: integer;
  begin
    for i := 1 to n do
      for j := 1 to k do
        A[i, j] := -1000 + random(2000);
  end;
 
  function MLD(const A: Matr2; n, k: integer; KeepPositive: boolean): Matr2;
  var
    i, j: integer;
    R: Matr2;
  begin
    for i := 1 to n do
      for j := 1 to k do
        if (KeepPositive) xor (A[i, j] < 0) then
          R[i, j] := A[i, j]
        else
          R[i, j] := 0;
    MLD := R;
  end;
 
  procedure ShowMatrix(const A: Matr2; n, k: integer);
  var
    i, j: integer;
  begin
    for i := 1 to n do
    begin
      for j := 1 to k do
        Write(A[i, j]: 6);
      writeln;
    end;
  end;
 
var
  A, B: Matr2;
  n, k: integer;
begin
  randomize;
  n := 6;
  k := 5;
 
  CreateRandomMatrix(A, n, k);
  writeln('A');
  ShowMatrix(A, n, k);
 
  B := MLD(A, n, k, True);
  writeln('B positive');
  ShowMatrix(B, n, k);
 
  B := MLD(A, n, k, False);
  writeln('B negative');
  ShowMatrix(B, n, k);
end.

Объяснение кода листинга программы

  1. Объявлен тип массива array[1..6, 1..6] of integer для представления квадратной матрицы размером 6x6.
  2. Создана процедура CreateRandomMatrix, которая инициализирует элементы матрицы A случайными числами в диапазоне от -1000 до 1000.
  3. Создана функция MLD, которая принимает матрицу A и три целых числа n, k, KeepPositive. Если KeepPositive равно true, то в новой матрице R сохраняются только положительные числа из матрицы A. Если KeepPositive равно false, то в новой матрице R сохраняются только нули.
  4. Создана процедура ShowMatrix, которая выводит элементы матрицы на экран.
  5. В основной части программы объявлены и инициализированы переменные A, B, n, k.
  6. Вызвана процедура CreateRandomMatrix, чтобы заполнить матрицу A случайными числами.
  7. Выведена матрица A на экран с помощью ShowMatrix.
  8. Вычислена и выведена на экран матрица B, в которой сохранены только положительные числа из матрицы A с помощью функции MLD и ShowMatrix.
  9. Вычислена и выведена на экран матрица B, в которой сохранены только отрицательные числа из матрицы A с помощью функции MLD и ShowMatrix.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.667 из 5
Похожие ответы