Pagini recente » Cod sursa (job #1817743) | Cod sursa (job #2127006) | Cod sursa (job #1213742) | Cod sursa (job #2270891) | Cod sursa (job #1715866)
#include <cstdio>
#define BASE 100
using namespace std;
FILE*f = fopen("nunta.in" , "r");
FILE*g = fopen("nunta.out" , "w");
short int n , x , aux , t;
char A[105] , B[105];
void adun(char A[] , char B[] , char C[]);
void copie(char A[] , char B[]);
void afis(char A[]);
int main() {
fscanf(f , "%hd" , &n);
A[1] = A[0] = 1;
B[1] = B[0] = 1;
for (short int i = 1; i <= n; ++i) {
t = 0;
A[0] = B[0];
for (short int j = 1; j <= B[0]; ++j) {
x = A[j];
A[j] = B[j];
aux = B[j] + t + x;
t = aux / BASE;
B[j] = aux % BASE;
}
while (t) {
B[++B[0]] = t % BASE;
t /= BASE;
}
}
fprintf(g , "%d", (short int)A[A[0]]);
for (short int i = A[0] - 1; i > 0; --i) {
if((short int) A[i] < 10)
fprintf(g , "0");
fprintf(g , "%d", (short int)A[i]);
}
}
void adun(char A[] , char B[] , char C[]) {
short int t = 0;
for (short int i = 1; i <= A[0]; ++i) {
A[i] = 0;
}
A[0] = B[0];
for (short int i = 1; i <= B[0]; ++i) {
short int aux = B[i] + C[i] + t;
t = aux / BASE;
A[i] = aux % BASE;
}
while (t) {
A[++A[0]] = t % BASE;
t /= BASE;
}
}
void copie(char A[] , char B[]) {
for (short int i = 1; i <= A[0]; ++i) {
A[i] = 0;
}
A[0] = 0;
for (short int i = 0; i <= B[0]; ++i) {
A[i] = B[i];
}
}
void afis(char A[]) {
fprintf(g , "%d", A[A[0]]);
for (short int i = A[0] - 1; i > 0; --i) {
if((short int) A[i] < 10)
fprintf(g , "0");
fprintf(g , "%d", (int)A[i]);
}
}