Определить, сколько в матрице строк, удовлетворяющих условию - C (СИ)
Формулировка задачи:
Добрый день.
Помогите с программой.
Определить, сколько в матрице А(8х6) строк, среднее арифметическое значение элементов которых больше среднего арифметического значения элементов массива В (18).
Решение задачи: «Определить, сколько в матрице строк, удовлетворяющих условию»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#define n 8
#define m 6
#define k 18
int main(){
int A[n][m], B[k];
int i,j,sumB = 0, sumA;
printf("Array B: ");
for(i = 0; i < k; i++){
B[i] = rand()% 20 + 1;
printf("%d ", B[i]);
sumB += B[i];
}
int srB = sumB / k;
int srA = 0, count = 0;
printf("\nMatrix A:\n ");
for(i = 0; i < n; i++){
sumA = 0;
for(j = 0; j < m; j++){
A[i][j] = rand()% 20 + 1;
printf("%d ", A[i][j]);
sumA += A[i][j];
}
srA = sumA / m;
if(srA > srB){
count++;
printf(" + ");// для того чтобы было видно у какой строки ср арифм > ср арифм B
}
printf("\n");
}
printf("\n %d stroki", count);
return 0;
}
Объяснение кода листинга программы
- Объединение исходных файлов с помощью директивы #include
и . - Определение размеров матрицы A с помощью макросов n, m, k.
- Создание массивов A[n][m] и B[k] и инициализация их случайными значениями с помощью функции rand().
- Вывод значений массива B на экран с помощью цикла for и функции printf().
- Вычисление среднего значения элементов массива B с помощью деления суммы всех элементов на их количество.
- Инициализация переменных srA и count нулевыми значениями.
- Вывод значений матрицы A на экран с помощью цикла for и функции printf().
- Вычисление среднего значения элементов каждой строки матрицы A с помощью цикла for и функции printf().
- Проверка условия если среднее значение строки матрицы A больше среднего значения массива B, увеличение переменной count и вывод
+с помощью функции printf(). - После окончания цикла вывод на экран количества строк матрицы A, удовлетворяющих условию, с помощью функции printf().
- Возврат значения 0 функцией main(), означающее успешный конец работы программы.