Cerința
Numim suma cifrelor până la o cifră a unui număr X, o valoare mai mică decât 10 obținută prin adunarea cifrelor numărului X și repetarea procedurii dacă suma obținută este mai mare decât 10, de această dată având drept X suma obținută la pasul precedent.
Se dă un număr n reprezentând poziția unui număr Fn din șirul lui Fibonacci. Să se calculeze suma cifrelor până la o cifră a lui Fn.
Reamintim că primele două numere din șirul lui Fibonacci au valoarea 1, iar restul se obțin ca fiind suma precedentelor două (pentru orice poziție n mai mare strict decât 2, Fn = Fn-1 + Fn-2).
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Programul va afișa pe ecran valoarea S, reprezentând suma cifrelor până la o cifră a numărului Fn.
Restricții și precizări
1 ≤ n ≤ 1019
Exemplu
Intrare
11
Ieșire
8
Explicație
Al unsprezecelea număr din șirul lui Fibonacci este 89 (1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89…). Adunând cifrele acestuia obținem 17. Deoarece 17 este mai mare decât 10 se adună și cifrele acestuia: 1+7=8.
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema Fibo_SumaCifre :
#include <iostream>
using namespace std;
int main()
{
long long n;
cin >> n;
n%=24; // pentru ca sirul se repeta din 24 in 24
int i=1;
int j=1;
for (int contor=3; contor<=n; contor++)
{
int k = i + j;
i = j;
j = k;
}
cout << (j % 9? j % 9 : 9);
return 0;
}
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa
.
Rezolvarea problemei #2612 Fibo_SumaCifre
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #2612 Fibo_SumaCifre de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!