#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
ncare indică numărul de termeni ai șirului ce trebuie generați. - Utilizează variabila
termenpentru a ține evidența termenului curent al șirului. - Utilizează variabila
countpentru a ține evidența numărului de termeni generați până în prezent. - Folosește o buclă
whilepentru 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ăforpentru 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
termenori, se incrementeazătermenpentru a trece la următorul termen al șirului.
- Primește un parametru
- Funcția
main:- Citește valoarea lui
nde la utilizator. - Verifică dacă
neste un număr pozitiv. - Apelează funcția
genereazaSirpentru a genera și afișa primiintermeni ai șirului.
- Citește valoarea lui