Scrieţi un program în limbajul C/C++ care citeşte de la tastatură două valori naturale n şi m
(1≤n≤24, 1≤m≤24) şi construieşte în memorie un tablou bidimensional cu n linii şi m coloane
format din toate numerele naturale de la 1 la n*m, ca în exemplu. Programul va afişa pe
ecran, pe n linii, tabloul obţinut, elementele fiecărei linii fiind separate prin câte un spaţiu.
Exemplu: pentru n=4 şi m=5 se va afişa:
1 2 3 4 5
10 9 8 7 6
11 12 13 14 15
20 19 18 17 16
Răspunsuri la întrebare
Răspuns de
2
Programul este scris in MinGW, si este verificat, poti sa-l verifici si tu :))
#include<iostream.h>
int main()
{
unsigned int n,m, a[25][25],i,j,k=1;
//citim numerele astfel incat sa fie in intervalul [1,24 ]
do{
cout<<"n=";cin>>n;
}while(n<1||n>24);
do{
cout<<"m=";cin>>m;
}while(m<1||m>24);
//construim matricea
for(i=1;i<=n;i++)
{
//daca indicele matricei este impar scriem numerele in ordine
// de la stanga la dreapta
if(i%2==1)
{
for(j=1;j<=m;j++)
{
a[i][j]=k;
k++;
}
}
// altfel, le scriem de la dreapta la stanga
else{
for(j=m;j>=1;j--)
{
a[i][j]=k;
k++;
}
}
}
// afisam matricea
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
cout<<a[i][j]<<" ";
cout<<endl;
}
return 0;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Franceza,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Ed. tehnologică,
9 ani în urmă
Matematică,
9 ani în urmă