Pagini recente » Cod sursa (job #2843928) | Cod sursa (job #1929045) | Cod sursa (job #2425879) | Cod sursa (job #2226541) | Cod sursa (job #356170)
Cod sursa(job #356170)
#include <stdio.h>
int v[1000],w[1000],z[10000];
int main ()
{ FILE *f=fopen("nunta.in","r");
FILE *g=fopen("nunta.out","w");
int n,a,b,k=0,t,p=0,i;
fscanf (f,"%d",&n);
if (n==1) fprintf (g,"1");
else if (n==2) fprintf (g,"2");
else { v[1]=1;
w[1]=2;
k=2;
v[0]=1;
w[0]=1;
while (k<n)
{ a=1;
b=1;
t=0;
p=0;
while (a<=v[0] && b<=v[0])
{ if (v[a]+w[b]+t>9) { z[++p]=(v[a]+w[b]+t)%10;
t=1;
}
else { z[++p]=v[a]+w[b]+t;
t=0;
}
a++;
b++;
}
while (a<=v[0]) { z[++p]=(v[a]+t)%10;
if (v[a]+t>9) t=1;
else t=0;
a++;
}
while (b<=w[0]) { z[++p]=(w[b]+t)%10;
if (w[b]+t>9) t=1;
else t=0;
b++;}
if (t>0) z[++p]=t;
for (i=1; i<=w[0]; i++) v[i]=w[i];
v[0]=w[0];
for (i=1; i<=p; i++) w[i]=z[i];
w[0]=p;
k++;
}
for (i=p; i>=1; i--)
fprintf (g,"%d",z[i]);
}
fclose (f);
fclose (g);
return 0;
}