19 Şubat 2016 Cuma

Fibonacci series

#include <iostream>
 
using namespace std;
int main()
{
long int a[10000]={0},b[10000]={0};
int  fa=2, fb=2,i,j,n,m;
cin>>n;
a[0]=1; b[0]=1; m=1;
while(fa<n)
{for(i=0;i<m;i++)
a[i]+=b[i]; fa=fb+1;
for(i=1;i<m;i++)
{ a[i]+=a[i-1]/10;
a[i-1]%=10;}
if (a[m-1]>9)
{
   m++;
   a[m-1]=a[m-2]/10;
   a[m-2]%=10;
}
if(fa<n)
{for(i=0;i<m;i++)
b[i]+=a[i]; fb=fa+1;
 for(i=1;i<m;i++)
{ b[i]+=b[i-1]/10;
b[i-1]%=10;}
if (a[m-1]>9)
{
   m++;
   b[m-1]=b[m-2]/10;
   b[m-2]%=10;
}     }}   
  if(fa==n)        
{for (i=m-1; i>=0; i--)
cout<<a[i];
cout<<endl;}
else
{for (i=m-1; i>=0; i--)
cout<<b[i];
cout<<endl;}
 
return 0;
}

Hiç yorum yok:

Yorum Gönder