BUN-test/test.c
2025-01-05 00:30:17 +01:00

41 lines
696 B
C

#include <stdint.h>
#include <gmp.h>
uint64_t fibonacci( void ) {
const int n = 25000;
uint64_t a = 0, b = 1, c;
for (int i = 2; i <= n; i++) {
c = a + b;
a = b;
b = c;
}
return b;
}
char* fibonacci_gmp() {
const int n = 25000;
static char result[10000]; // Assicurati che sia abbastanza grande per contenere il numero
mpz_t a, b, c;
mpz_init_set_ui(a, 0);
mpz_init_set_ui(b, 1);
mpz_init(c);
for (int i = 2; i <= n; i++) {
mpz_add(c, a, b);
mpz_set(a, b);
mpz_set(b, c);
}
mpz_get_str(result, 10, b);
mpz_clear(a);
mpz_clear(b);
mpz_clear(c);
return result;
}