Pagini recente » Cod sursa (job #1441933) | Cod sursa (job #1055169) | Monitorul de evaluare | Cod sursa (job #3291743) | Cod sursa (job #3240909)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("nunta.in");
ofstream g("nunta.out");
int nr1[501], nr2[501], nr3[501];
void adunare(int nr1[], int nr2[], int rez[])
{
int i, tineMinte=0;
rez[0]=nr2[0];
for(i=1; i<=nr2[0]; i++)
{
tineMinte=nr1[i]+nr2[i]+tineMinte;
rez[i]=tineMinte%10;
tineMinte=tineMinte/10;
}
while(tineMinte>0)
{
rez[++rez[0]]=tineMinte%10;
tineMinte=tineMinte/10;
}
}
void copiaza(int nr1[], int nr2[])
{
int i;
for(i=0; i<=nr2[0]; i++)
nr1[i]=nr2[i];
}
void afisare(int rez[])
{
int i;
for(i=rez[0]; i>=1; i--)
g<<rez[i];
}
int main()
{
int n, i;
f>>n;
if(n==0)
g<<0;
else
if(n==1)
g<<1;
else
{
nr1[0]=nr2[0]=1;
nr1[1]=0;
nr2[1]=1;
for(i=1; i<=n; i++)
{
adunare(nr1, nr2, nr3);
copiaza(nr1, nr2);
copiaza(nr2, nr3);
}
}
afisare(nr3);
return 0;
}