Scrieţi un program C/C++ care citeşte de la tastatură două numere naturale n şi m (2≤m≤10, 2≤n≤10) şi care construieşte în memorie şi apoi afişează o matrice A cu n linii (numerotate de la 1 la n) şi m coloane (numerotate de la 1 la m) cu proprietatea că fiecare element Aij memorează cea mai mare dintre valorile indicilor i şi j (1≤i≤n, 1≤j≤m). Matricea se va afişa pe ecran, câte o linie a matricei pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spaţiu. (10p.) Exemplu: pentru n=4 şi m=5 se va afişa matricea alăturată. . (10p.)  
1 2 3 4 5
2 2 3 4 5
3 3 3 4 5
4 4 4 4 5 

Răspuns :

#include <iostream>
#include <fstream>
using namespace std;

int a[100][100],m,n,i,j;

int main()
{
cout<<"Dati n: ";cin>>n;
cout<<"Dati m: ";cin>>m;
for (i=1;i<=n;++i)
  for (j=1;j<=m;++j)
     if (i<j) a[i][j]=i;
        else a[i][j]=j;
for (i=1;i<=n;++i)
    {
     for (j=1;j<=m;++j)
          {
          cout<<a[i][j]<<" ";
          }
      cout<<endl;
    }
return 0;
}