Найти элементы матрицы, по модулю превышающие заданное число q, и определить их количество - Pascal ABC

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

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

Даны натуральные числа n,m,q и матрица разрядности NxM действительных(в том числе отрицательных чисел), где N,M<=7. Найти элементы матрицы, по модулю превышающие заданное число q, и определить их количество.

Решение задачи: «Найти элементы матрицы, по модулю превышающие заданное число q, и определить их количество»

textual
Листинг программы
program pr;
 
var
  a: array [1..100, 1..100] of real; // объявляем матрицу
  n, m, i, j, cout: integer;
  q: real;
 
begin
  cout := 0;      // счётчик
  writeln('Введите количество строк');  
  readln(n); 
  writeln('Введите количество столбцов');
  readln(m);
  writeln('Введите q');       
  readln(q);
  if (n<=7) and (m<=7) then // проверяем условие( n и m должны быть <=7), если это условие выполняется идём дальше 
  begin
  for i := 1 to n do
    for j := 1 to m do
      a[i, j] := random(21) - 10;         // заполняем матрицу случайными числами в диапазоне от -10 до 10 (диапазон можете поставить любой)
  for i := 1 to n do          // выводим на экран матрицу 
  begin
    for j := 1 to m do
      write(a[i, j]:3);
    writeln;
  end;
  writeln;
  for i := 1 to n do
    for j := 1 to m do
      if abs(a[i, j]) > q then      // проверяем по очереди элементы матрицы, если эл. по модулю больше q, тогда выводим его на экран
      begin
        write(a[i, j]:3);
        cout := cout + 1;    // наращиваем счётчик таких элементов 
      end;
      writeln;
  writeln('Количество элементов больших q по модулю: ', cout);     // выводи результат 
  end
  else writeln(' n,m  должны быть <=7');  // если n и m не подходят по условию то выводится это сообщение 
end.

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

В данной программе мы объявляем матрицу размером n x m и заполняем её случайными числами. Затем мы проверяем каждый элемент матрицы на превышение заданного числа q по модулю и выводим его, если это условие выполняется. Также мы ведём счётчик таких элементов. В конце программы выводим количество элементов, больших q по модулю.

  1. var
  2. a: array [1..100, 1..100] of real;
  3. n, m, i, j, cout: integer;
  4. q: real;
  5. begin
  6. cout := 0;
  7. writeln('Введите количество строк');
  8. readln(n);
  9. writeln('Введите количество столбцов');
  10. readln(m);
  11. writeln('Введите q');
  12. readln(q);
  13. if (n<=7) and (m<=7) then
  14. begin
  15. for i := 1 to n do
  16. for j := 1 to m do
  17. a[i, j] := random(21) - 10;
  18. for i := 1 to n do
  19. for j := 1 to m do
  20. write(a[i, j]:3);
  21. writeln;
  22. for i := 1 to n do
  23. for j := 1 to m do
  24. if abs(a[i, j]) > q then
  25. begin
  26. write(a[i, j]:3);
  27. cout := cout + 1;
  28. end;
  29. writeln;
  30. end;
  31. end.
  32. else writeln(' n,m должны быть <=7');

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


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

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

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