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

Salut,am si eu nevoie de ajutor la problema asta:
Să se scrie un program C/C++/ Pascal care citeşte de la tastatură două numere naturale n şi p (2≤n≤20, 1≤p≤20) construieşte și afișează pe ecran un tablou bidimensional cu n linii şi p coloane. Tabloul parcurs pe linii va contine sirul primelor n*p, pătrate perfecte impare, ordonat strict crescător, ca în exemplu.

Exemplu: pentru n=2, p=3 programul va afişa tabloul alăturat:
1 9 25
49 81 121

Răspunsuri la întrebare

Răspuns de Owned
6
int a[50][50]

int main()
{ int n,p, d, x;

cin>>n>>p;  //citim n si p
d=1; //initializam variabila pe care o vom folosi sa gasim nr patrate perfecte impare

for(int i=1;i<=n;i++)         //construim matricea, initial goala.
for(int j=1;j<=p;j++)
x=d*d;
if(d == sqrt(x) )     // verificam daca e patrat perfect (ex. 3 e egal cu radical din 9)
{a[i][j] = x;
d=d+2;            // mergem din 2 din 2, pt a scapa de verificare daca e nr impar.
}
else d=d+2;

for(int i=1;i<=n;i++)         //afisam matricea
{for(int j=1;j<=p;j++)
{cout<<a[i][j]<<" ";}
cout<<endl;
}

return 0;
}

Vladutzull: Multumesc mult.
Alte întrebări interesante