Дана матрица, найти количество элементов по условию - QBasic
Формулировка задачи:
Дана матрица размера M x N. В каждой строке найти количество элементов, меньших среднего арифметического всех элементов этой строки
Решение задачи: «Дана матрица, найти количество элементов по условию»
textual
Листинг программы
CLS RANDOMIZE TIMER INPUT "M, N = "; m, n DIM x(m, n) AS LONG DIM SA(m) AS SINGLE DIM k(m) AS LONG FOR i = 1 TO m FOR j = 1 TO n x(i, j) = 18 * RND - 9 PRINT x(i, j); NEXT: PRINT NEXT: PRINT FOR i = 1 TO m FOR j = 1 TO n SA(i) = SA(i) + x(i, j) NEXT j, i FOR i = 1 TO m SA(i) = SA(i) / n PRINT SA(i); NEXT PRINT : PRINT FOR i = 1 TO m FOR j = 1 TO n IF x(i, j) < SA(i) THEN k(i) = k(i) + 1 NEXT j, i FOR i = 1 TO m PRINT k(i); NEXT END
Объяснение кода листинга программы
- Задаются размеры матрицы
m
иn
с помощью функцииINPUT
. - Создаются матрица
x
и векторыSA
иk
с помощью функцииDIM
. - В цикле
FOR
заполняется матрицаx
случайными числами с помощью функцииRND
. - В цикле
FOR
элементы матрицыx
суммируются и записываются в векторSA
. - В цикле
FOR
элементы вектораSA
делятся на размер матрицыn
. - В цикле
FOR
проверяется условиеIF
и если элемент матрицыx
меньше значения в вектореSA
, то к элементу вектораk
прибавляется единица. - В цикле
FOR
выводятся значения вектораk
.