Выполнить заданные операции над матрицей - Pascal

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

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

Дана матрица С(5х5) положительных и отрицательных элементов 1) Ввести элементы матрицы и вывести на экран дисплея. 2) Вывести на экран дисплея элементы главной диагонали (i=j), определить их сумму и число положительных элементов главной диагонали. 3) Включить в матрицу дополнительную строку с заданным номером K (K=6), вывести на экран новую матрицу С1. 4) Реализовать поиск элемента по его индексам и вывод его на экран. Начало у меня было положено, сделал первый и половину второго пункта:
Листинг программы
  1. program massiv;
  2. const m=5;
  3. n=5;
  4. k=6;
  5. var c:array[1..m,1..n] of integer;
  6. var c1:array[1..m,1..k] of integer;
  7. i,j,sum,pol:integer;
  8. begin
  9. for i:=1 to m do
  10. for j:=1 to n do read (c[i,j]);
  11. writeln('Матрица C');
  12. for i:=1 to m do
  13. begin
  14. for j:=1 to n do write (c[i,j],' ');
  15. writeln();
  16. end;
  17. writeln('Элементы главной диагонали');
  18. for i:=1 to m do
  19. begin
  20. for j:=1 to n do if i=j then write (c[i,j],' ');
  21. end;
  22. end.

Решение задачи: «Выполнить заданные операции над матрицей»

textual
Листинг программы
  1. var
  2.     ar: Array[1..6, 1..5] Of Integer;
  3.     i, j, pos, x, y, n, m: Byte;
  4.     sum: LongInt;
  5. begin
  6.     {1}
  7.     n := 5;
  8.     m := n;
  9.     for i := 1 to n do
  10.         for j := 1 to m do
  11.             ReadLn(ar[i, j]);
  12.     WriteLn('Матрица C:');
  13.     for i := 1 to n do
  14.     begin
  15.         for j := 1 to m do
  16.             Write(ar[i, j]:7);
  17.         WriteLn;
  18.     end;
  19.     {2}
  20.     sum := 0;
  21.     pos := 0;
  22.     Write('Элементы главной диагонали:');
  23.     for i := 1 to m do
  24.     begin
  25.         Write(ar[i, i]:7);
  26.         if (ar[i, i] > 0)
  27.         then
  28.             Inc(pos);
  29.         Inc(sum, ar[i, i]);
  30.     end;
  31.     WriteLn;
  32.     WriteLn('Положительных на главной диагонали: ', pos);
  33.     WriteLn('Сумма элементов главной диагонали: ', sum);
  34.     {3}
  35.     WriteLn('Введите 5 элементов дополнительной строки:');
  36.     Inc(n);
  37.     for j := 1 to m do
  38.         ReadLn(ar[n, j]);
  39.     WriteLn('Матрица С1:');
  40.     for i := 1 to n do
  41.     begin
  42.         for j := 1 to m do
  43.             Write(ar[i, j]:7);
  44.         WriteLn;
  45.     end;
  46.     {4}
  47.     WriteLn('Введите индексы искомого элемента матрицы: ');
  48.     ReadLn(x, y);
  49.     if ((x in [1..n]) And (y in [1..m]))
  50.     then
  51.         WriteLn('C[', x, '][', y, ']=', ar[x, y])
  52.     else
  53.         WriteLn('Индексы заданы неверно!');
  54. end.

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

  1. Создание переменных:
    • ar - двумерный массив размером 6x5 для хранения элементов матрицы
    • i, j, pos, x, y, n, m - целочисленные переменные
    • sum - переменная для хранения суммы элементов
  2. Ввод элементов матрицы и вывод матрицы C:
    • Инициализация переменной n со значением 5
    • Инициализация переменной m со значением n
    • Последовательный ввод элементов матрицы в массив ar
    • Вывод матрицы C в консоль
  3. Вычисление суммы и количества положительных элементов на главной диагонали:
    • Инициализация переменных sum и pos со значениями 0
    • Поиск положительных элементов на главной диагонали, подсчет их количества и суммирование
    • Вывод количества положительных элементов и суммы элементов на главной диагонали
  4. Добавление дополнительной строки и вывод обновленной матрицы C1:
    • Ввод 5 элементов для дополнительной строки и добавление её к матрице
    • Вывод обновленной матрицы C1 в консоль
  5. Поиск и вывод элемента матрицы по заданным индексам:
    • Ввод индексов x и y и проверка их корректности
    • Вывод найденного элемента матрицы C[x][y] или сообщение о неверных индексах.

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


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

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

6   голосов , оценка 4.167 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы