Pagini recente » Cod sursa (job #385516) | Cod sursa (job #426578) | Cod sursa (job #321308) | Cod sursa (job #627982) | Cod sursa (job #257602)
Cod sursa(job #257602)
#include<fstream.h>
int a[1000],c[1000],s[1000],b,x,i,t,j;
int main()
{
ifstream f("patrate2.in");
ofstream g("patrate2.out");
f>>b; b=b*b;
s[0]=1; s[1]=1;
a[0]=1; a[1]=2;
while(b)
{
if(b%2)
{ for(i=1; i<=a[0]; i++)
{
for(t=0,j=1;j<=s[0]||t;j++,t/=10)
c[i+j-1]=(t+=c[i+j-1]+a[i]*s[j])%10;
if(i+j-2>c[0]) c[0]=i+j-2;
}
for(i=0;i<=c[0];i++)
s[i]=c[i];
for(i=1;i<=c[0];i++) c[i]=0; c[0]=0;
}
for(i=1; i<=a[0]; i++)
{
for(t=0,j=1;j<=a[0]||t;j++,t/=10)
c[i+j-1]=(t+=c[i+j-1]+a[i]*a[j])%10;
if(i+j-2>c[0]) c[0]=i+j-2;
}
for(i=0;i<=c[0];i++)
a[i]=c[i];
for(i=1;i<=c[0];i++) c[i]=0; c[0]=0;
b/=2;
}
for(i=s[0];i>0;i--) g<<s[i];
f.close();
g.close();
return 0;
}