Informatică, întrebare adresată de tuleaartiom, 8 ani în urmă

Fie dat tabloul bidimensional A[1..n,1..m] cu elemente numere reale. Să se compună un program
care va număra elementele nule şi va determina poziţia (numărul liniei şi numărul coloanei)
primei întâlniri a elementului maximal , la parcurgerea pe linii a matricei A.Urgent!!!

Răspunsuri la întrebare

Răspuns de Rayzen
2

#include <iostream>

using namespace std;

// declaram matricea A cu n linii şi m coloane

int A[100][100];

int main() {

 int n, m;

 // citim dimensiunile matricei

 cin >> n >> m;

 // citim elementele matricei

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

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

     cin >> A[i][j];

   }

 }

 // initializam contorul de elemente nule cu 0

 int zero_count = 0;

 // initializam pozitia maximului cu -1 (nu am intalnit inca un maxim)

 int max_pos_row = -1, max_pos_col = -1;

 // parcurgem matricea A liniar

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

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

     // daca elementul curent este zero, incrementam contorul

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

       zero_count++;

     }

     // daca elementul curent este mai mare decat maximul curent, actualizam maximul

     // si salvam pozitia acestuia

     else if (A[i][j] > A[max_pos_row][max_pos_col]) {

       max_pos_row = i;

       max_pos_col = j;

     }

   }

 }

 // afisam rezultatele

 cout << "Numarul de elemente nule: " << zero_count;

 cout << "\nMaximul este la pozitia: " << max_pos_row << " " << max_pos_col;

}

Alte întrebări interesante