Найти элементы матрицы, по модулю превышающие заданное число 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 по модулю.
- 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
- begin
- for i := 1 to n do
- for j := 1 to m do
- a[i, j] := random(21) - 10;
- for i := 1 to n do
- for j := 1 to m do
- write(a[i, j]:3);
- writeln;
- for i := 1 to n do
- for j := 1 to m do
- if abs(a[i, j]) > q then
- begin
- write(a[i, j]:3);
- cout := cout + 1;
- end;
- writeln;
- end;
- end.
- else writeln(' n,m должны быть <=7');
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д