Răspuns :
Răspuns:
#include <iostream>
using namespace std;
int n, num, g, s;
int main()
{
cout << "n= "; cin >> n;
cout << "sirul creat cu n termeni: " << endl;
g=1; s=0;
while (s+g<n)
{
for (num=g; num>0; --num)
cout << num << " ";
s=s+g; ++g;
}
int dif=n-s;
num=g;
for (int i=1; i<=dif; ++i)
cout << num-- << " ";
return 0;
}
Explicație:
conform enunţului şirul e foemat din grupuri:
(1)(21)(321)(4321)(54321)...
variabila n reprezintă nr. de termeni ai şirului, dacă n=10, atunci avem toţi termenii din patru grupe (1+2+3+4=10, în primul grup este 1 număr, în al doilea 2 numere, în al treilea 3 numere şi în al patrulea 4 numere)
Folosesc variabila s care face suma sirului Gauss şi variabila g ce reprezintă grupul
variabila num e de lucru. În caz că s+g e mai mare ca n atunci folosesc variabila dif pentru a vedea câţi termeni din următorul grup au rămas de afişat.
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări suplimentare sau nevoie de ajutor, vă rugăm să ne contactați cu încredere. Așteptăm cu drag să reveniți și nu uitați să ne salvați în lista dumneavoastră de favorite!