Informatică, întrebare adresată de BeMi, 9 ani în urmă

Cerinţa
Scrieţi un program care citeşte de la tastatură două numere naturale n şi m şi construieşte în memorie o matrice cu n linii şi m coloane care conţine numerele naturale de la 1 la m*n, dispuse astfel:

prima linie conţine numerele de la 1 la m, ordonate crescător;
a doua linie conţine numerele de la m+1 la 2*m, ordonate descrescător;
a treia linie conţine numerele de la 2*m+1 la 3*m, ordonate crescător;
a patra linie conţine numerele de la 3*m+1 la 4*m, ordonate descrescător;
etc.
Date de intrare
Programul citește de la tastatură numerele n şi m.

Date de ieşire
Programul afișează pe ecran matricea 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
3≤n,m≤15

Răspunsuri la întrebare

Răspuns de ionutg38
4
#include <iostream>using namespace std;long int a[102][102];
int main(){    long int n,m,i,j,x=0;    cin>>n>>m;    for(i=1;i<=n;i++)    {        if(i%2==1)            for(j=1;j<=m;j++)                a[i][j]=++x;        else            for(j=m;j>=1;j--)                a[i][j]=++x;    }    for(i=1;i<=n;i++)    {        for(j=1;j<=m;j++)            cout<<a[i][j]<<" ";        cout<<'\n';    }    return 0;}
Alte întrebări interesante