Bonjour,

Je tente d'écrire l'algorithme rho de Pollard en c(++), avec GMP pour pouvoir manipuler de grands nombres.

J'ai écrit l'algo, cependant, j'ai toujours une erreur de base, mais que je ne comprends pas.

Voici le code incriminé

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
#include <gmp.h>
 
int main(int argc, char** argv){
  mpz_t n;
 
  mpz_init(n);
  mpz_set_ui(n,12);
  gmp_printf("N=%Z\n",n);
 
  mpz_clear(n);
  return 0;
}
pour compiler :
gcc -o test -lgmp
avec libgmp3-dev installé sous Debian Sid.
pour lancer le programme :
./test

Il devrait afficher N=12
Cependant, n est toujours vide... Et je ne sais pas pourquoi.
J'ai tenté plusieurs méthodes : lecture d'une chaîne, d'un fichier, initialisation et 0 seulement, sans passer à d'autres valeurs... MAis rien n'y fait, n reste vide.

Et bien sûr, aucune erreur nul part : ni à la compil, ni à l'exécution.

Je n'ai pas trouvé de forum de support spécifique à GMP ou que ce soit sur internet, si vous avez une adresse qui serait plus à même de répondre à mes questions, je suis preneur.

Merci de votre aide.