Найти элементы матрицы, по модулю превышающие заданное число 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');
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д