Să se numere liniile unei matrici ale căror elemente sunt în ordine crescătoare.
Sa se defineasca functii pentru:
- citirea matricei
- afisarea matricei
- verificarea daca o linie este ordonata crescator
- contorizarea liniilor ordonate crescator
Sa se demonstreze utilitatea functiilor definite apelandu-le in functia main.
Sa se dea un exemplu de executie.
Răspunsuri la întrebare
Răspuns:
#include <iostream>
using namespace std;
void citire(int A[][101], int& n, int& m) //citim matricea
{
int i, j;
cout << "nr de linii:"; cin >> n;
cout << "nr de coloane:"; cin >> m;
cout << "elementele :";
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
{
cout << "a[" << i << "][" << j << "]=";
cin >> A[i][j];
}
}
void afisare(int A[][101], int n, int m) //afisam matricea
{
int i, j;
cout << "Afisare matrice " << endl;
for (i = 0; i < n; i++)
{
for (j = 0; j < m; j++)
cout << A[i][j] << " ";
cout << endl;
}
cout << endl;
}
int verifscresc(int A[101][101], int n, int i) //verificam daca linia are elememente strict crescatoare
{
for (int j = 2; j <= n; j++)
if (A[i][j-1] >= A[i][j]) return 0;
return 1;
}
int catecresc(int A[101][101], int n, int m) //numaram liniile strict crescatoare
{
int c = 0;
for (int i = 1; i <= m; i++)
if (verifscresc(A, n, i))
c++;
return c;
}
int main()
{
int A[101][101], n, m, X[10001], k;
citire(A, n, m);
cout << catecresc(A, n, m) << endl;
afisare(A, n, m);
return 0;
}
Explicație: