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

Scrieti un program C++ care citeste de la tastatura doua numere naturale, m si n (2<=m<=20, 2<=n<=20), si construieste in memorie un tablou bidimensional A, cu m linii si n coloane, astfel incat parcurgandu-l linie cu linie, de sus in jos, si fiecare linie de la stanga la dreapta, sa se obtina sirul primelor n*m numere naturale, pare, care NU sunt divizibile cu 5, ordonat strict crescator. Programul afiseaza pe ecran tabloul obtinut, fiecare linie a tabloului pe cate o linie a ecranului, elementele de pe aceeasi linie fiind separate prin cate un spatiu.
Exemplu: pentru m=4 si n=3 se obtine tabloul:

2 4 6
8 12 14
16 18 22
24 26 28

Răspunsuri la întrebare

Răspuns de boiustef
1

#include <iostream>

using namespace std;

int a[21][21];

int main()

{

   int n, m, i, j, num;

   cout << "nr de linii:    m="; cin >> m;

   cout << "nr de coloane:  n="; cin >> n;

   num=0;

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

   {

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

       {

           num+=2;

           if (num%5==0) num+=2;

           a[i][j]=num;

       }

   }

   cout << "am obtinut tablou bidimensional: \n";

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

   {

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

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

       cout << "\n";

   }

   return 0;

}

Alte întrebări interesante