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

Ma poate ajuta cnv cu o explicatie la aceasta problema ?

Anexe:

Răspunsuri la întrebare

Răspuns de Sebimg
2

Răspuns:

#include <iostream>

using namespace std;

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

int main()

{

   cin>>n;

   cin>>m;

   for(i=1;i<=n;i++)

   for(j=1;j<=m;j++)

   {

       if(i<j||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<<'\n';

   }

   return 0;

}

Explicație:

Verificam care dintre indicii i si j sunt mai mici( if(i<j)). Daca "i" este mai mic decat "j", atunci valoarea afisata pe acea pozitie va fi "i", daca sunt egale,nu conteaza care dintre cele 2 va fi afisata pe pozitia respectiva, dar daca "j" este mai mare, atunci valoarea afisata pe acea pozitie va fi "j". La final afisam matricea rand cu rand, iar fiecare element cu spatiu intre. ( for(i=1;i<=n;i++)

   {for(j=1;j<=m;j++)

   cout<<a[i][j]<<" ";

   cout<<'\n';

   } )

Secventa ( cout<<'\n';  ) este echivalenta cu cout<<endl; , dar este mai eficienta.

Alte întrebări interesante