Pagini recente » Cod sursa (job #3164117) | Cod sursa (job #2962472) | Cod sursa (job #2632160) | Cod sursa (job #2449888) | Cod sursa (job #3185239)
#include <fstream>
using namespace std;
const int NMAX = 301;
ifstream f("nunta.in");
ofstream g("nunta.out");
int n, act[NMAX] = {1, 1}, prec[NMAX] = {1, 1}, aux[NMAX];
void adaugare(int A[], int B[])
{
int t = 0;
for(int i = 1 ; i <= max(A[0], B[0]); i++)
{
t += A[i] + B[i];
A[i] = t % 10;
t /= 10;
}
while(t)
{
A[++A[0]] = t % 10;
t /= 10;
}
}
void copiere(int A[], int B[])
{
for(int i = 0; i <= B[0]; i++)
A[i] = B[i];
}
void afis()
{
for(int i = act[0]; i >= 1; i--)
g << act[i];
}
int main()
{
f >> n;
if(n <= 2)
{
g << n;
return 0;
}
for(int i = 2; i <= n; i++)
{
copiere(aux, act);
adaugare(act, prec);
copiere(prec, aux);
}
afis();
return 0;
}