• Предмет: Информатика
  • Автор: alexanderlox
  • Вопрос задан 5 месяцев назад

У матриці на с++ обчислити середне арифметичне додатних єлементів

Ответы

Ответ дал: asilvejstruk
1

#include <iostream>

using namespace std;

int main() {

   const int n = 6, m = 4;

   int A[6][4];

   float middle = 0, sum = 0, kol = 0;

   for (int i = 0; i< n; i++) {

       for (int j = 0; j < m; j++) {

            cin >> A[i][j];

       }

   }

   for (int i = 0; i< n; i++) {

       for (int j = 0; j< m; j++) {

            if (A[i][j] > 0) {

                kol++;

                sum+= A[i][j];

                middle = sum / kol;

            }

       }

   }

   cout << "kol = " << kol << endl;

   cout << "sum = " << sum << endl;

   cout << "middle = " << middle << endl;

   return 0;

}

Ответ дал: Andrey36789
1

#include <iostream>

#include <cmath>

using namespace std;

int main() {

int n, m;

cin >> n >> m;

int a[n][m];

for (int i = 0; i < n; i++) {

 for (int j = 0; j < m; j++) {

  cin >> a[i][j];

 }

}

   int sum = 0, count = 0;

   for (int i = 0; i < n; i++) {  // проходимо по всіх рядках матриці та знаходимо суму додатніх чисел та к-сть таких чисел.

       for (int j = 0; j < m; j++) {   // проходимо по всім стовбцям.  

           if (a[i][j] > 0) {   // якщо елемент >0, то:  

               sum += a[i][j];   //додавання його до суми.  

               count++;          //збереження +1.  

           }     //к-сть +1, яку ми будемо використовувати, як "дiльник" - divider.  

       }     //пройдено 1-й рядок.

   }     //пройдено 1-й стовбець.

   double average = double(sum) / count;    //вважаємо, double(sum) - "дiльник", count - "дiлiтель".

   cout << average << endl;      //виведення average - "сeр.ар.".

   return 0;       //"0" - "успiш.".  

}

Вас заинтересует