fbpx

Problema #2836 – FiboImpar – Rezolvari PBInfo

de Mihai-Alexandru

Cerința

Șirul lui Fibonacci (1, 1, 2, 3, 5, 8, 13, 21,...) se definește astfel:

  • f1=1f1=1, f2=1f2=1, fi=fi1+fi2fi=fi1+fi2 pentru orice număr natural ii, i3i3.

Subprogramul Fibo are un singur parametru, n, prin care primeşte un număr natural (n∈[1,30]). Subprogramul returnează al n-lea termen impar al șirului lui Fibonacci.

Scrieți definiția completă a subprogramului.

Exemplu

Dacă n=6, subprogramul returnează valoarea 21.

Important

Soluția propusă va conține definiția subprogramului cerut. Prezența în soluție a altor instrucțiuni poate duce erori de compilare sau de execuție care vor avea ca efect depunctarea soluției.

int Fibo(int n)
{
    int x , y;
    x=y=1;
    int cnti=2;
    for(int i = 1 ; cnti < n ; ++i)
    {
        int sum = x + y;
        x = y , y = sum;
        if(y % 2 == 1)
            cnti++;
    }
    return y;
}
Comentarii

S-ar putea sa iti placa