#include <iostream>
using namespace std;
void genereazaSir(int n) {
int termen = 1;
int count = 0;
while (count < n) {
for (int i = 0; i <=termen; ++i) {
if (count >= n) break;
cout << termen << " ";
++count;
}
++termen;
}
cout << endl;
}
int main() {
int n;
cout << "Introduceti numarul de termeni n: ";
cin >> n;
if (n <= 0) {
cout << "n trebuie sa fie un numar pozitiv." << endl;
} else {
cout << "Primii " << n << " termeni ai sirului sunt: ";
genereazaSir(n);
}
return 0;
}
Explicație:
- Funcția
genereazaSir
:- Primește un parametru
n
care indică numărul de termeni ai șirului ce trebuie generați. - Utilizează variabila
termen
pentru a ține evidența termenului curent al șirului. - Utilizează variabila
count
pentru a ține evidența numărului de termeni generați până în prezent. - Folosește o buclă
while
pentru a continua generarea termenilor până când numărul de termeni generați (count
) este egal cun
. - În interiorul buclei
while
, utilizează o buclăfor
pentru a adăuga de mai multe ori termenul curent în șir (numărul de adăugări fiind egal cu valoarea termenului). - După adăugarea termenului curent de
termen
ori, se incrementeazătermen
pentru a trece la următorul termen al șirului.
- Primește un parametru
- Funcția
main
:- Citește valoarea lui
n
de la utilizator. - Verifică dacă
n
este un număr pozitiv. - Apelează funcția
genereazaSir
pentru a genera și afișa primiin
termeni ai șirului.
- Citește valoarea lui