fbpx

Problema #2841 – GenMat27 – Rezolvari PBInfo

de Mihai-Alexandru

Cerinţa

Scrieţi un program care citește de la tastatură două numere naturale, m și n (2≤m≤20, 2≤n≤20), și construiește în memorie un tablou bidimensional A, cu m linii și n coloane, astfel încât parcurgându-l linie cu linie, de sus în jos, și fiecare linie de la stânga la dreapta, să se obțină șirul primelor n·m numere naturale, pare, care NU sunt divizibile cu 5, ordonat strict crescător.

Programul afişează pe ecran tabloul obținut, fiecare linie a tabloului pe câte o linie a ecranului, elementele de pe aceeași linie fiind separate prin câte un spațiu.

Date de intrare

Programul citește de la tastatură numerele m și n.

Date de ieşire

Programul afișează pe ecran tabloul construit, 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.

Restricţii şi precizări

  • 2 ≤ m,n ≤ 20

Exemplu

Intrare

4 3

Ieșire

2 4 6
8 12 14
16 18 22
24 26 28
#include <bits/stdc++.h>
using namespace std;
int n , m , a[25][25];

int main()
{
    cin >> n >> m;
    int p = 2 , cnt = 1 , i = 1 , j = 1;
    while(cnt <= n * m)
    {
        a[i][j] = p;
        j++;
        if(m + 1== j) j = 1 , i++;
        if((p + 2)% 5 == 0) p += 4;
        else p += 2;
        cnt++;
    }
    for(int i = 1 ; i <= n; i++)
    {
        for(int j = 1 ; j <= m; j++)
            cout << a[i][j] << ' ';
        cout << '\n';
    }
}
Comentarii

S-ar putea sa iti placa