👤

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ăspuns :

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;
}
Vă mulțumim pentru vizita pe platforma noastră dedicată Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, nu ezitați să ne contactați. Așteptăm cu entuziasm să reveniți și vă invităm să ne adăugați la lista de favorite!


Viz Lesson: Alte intrebari