Afișarea tuturor termenilor șirului lui Fibonacci mai mici decât un număr x

#include <iostream>

using namespace std;

int main()
{
    long x,a,b,c,i,k=1,p=0;
    cin>>x;
    if(x==1)cout<<"1 1";
    else if(x==2)cout<<"1 1 2";
    else
    {
        cout<<"1 1 ";
        a=1;
        b=1;
        p=a+b;
        while(p<x)
        {
            p=a+b;
            a=b;
            b=p;
            ++k;
        }
        a=1;
        b=1;
        for(i=3;i<=k;++i)
        {
            c=a+b;
            cout<<c<<" ";
            a=b;
            b=c;
        }
    }
    return 0;
}

Leave a comment