Bonjour,
je souhaiterais obtenir l'aide de quelqu'un afin de m'aider à faire mon DM de math spé. Je tiens à préciser que je n'ai répondu à aucunes questions, puisque je n'arrive pas à mettre en place le tableur --'. Et pour cause, le tableur m'indique que la capacité (mémoire) de mon ordinateur est insuffisante .
Je remercie d'avance ceux ou celles qui m'aideront!
Énoncé:
Pour les nombres de Mersenne, il existe une méthode beaucoup plus efficace qu'un test de primalité classique. Cette méthode, appelée test de Lucas-Lehmer, s'appuie sur le principe suivant:
Étant donné un nombre premier p, on souhaite déterminer si le nombre de Mersenne Mp est premier ou non.
On considère alors la suite (Un) d'entiers tels que U0=4 et, pour tout entier naturel n,
Un+1 est le reste de la division euclidienne de Un²-2 par Mp.
On sait alors [résultat admis] que Mp est premier si, et seulement si, le terme Up-2 est nul.
On se propose de tester l'efficacité de cette méthode.
a) Appliquer la méthode pour tester la primalité du nombre M13. On utilisera un tableur pour ceci (aide: la formule = MOD( ; ) permet d'obtenir un reste).
b) Combien d'étapes de calcul ont-elles été nécessaires pour obtenir le résultat précédent?
c) Avec le même procédé, tester la primalité de M17, M19 et M23. Sur tableur, on peut utiliser la même feuille de calcul pour tous les tests.
d) Combien d'étapes de calcul sont-elles nécessaires pour tester M29
Sur ce je vous souhaite une bonne journée!
Bonjour,
tu as dû mettre quelque chose de faux dans ton tableur entrainant des boucles sans fin qui dépasseront toujours la capacité de quelque ordinateur que ce soit, vu qu'elles sont sans fin !!
qu'as tu fait sur ton tableur ?
Combien d'étapes de calcul ont-elles été nécessaires pour obtenir le résultat précédent?
on part de U0 et on s'arrête à Up-2
il faut donc un nombre fini d'opérations et "visiblement" inférieur à p = 13 !!
M13, p = 13, ça se termine en moins de 13 étapes !!
le plus grand nombre calculé là dedans est de l'ordre de M13² 226
(Un < M13 quel que soit n, vu que c'est un reste de division par M13, et donc Un² < M13²)
la capacité de calcul de n'importe quel ordinateur de nos jours est sans précaution particulière sur des nombres de 264 au moins.
il n'y a donc aucune raison que ça coince pour M13
Bonjour,
tout d'abord je tiens à vous remercier de votre réponse. Sinon voici ce que j'ai mis dans mon tableur:
Dans la colonne A, j'ai mis les valeurs de n (0 à 13). En commençant à A2=2
et dans la colonne B j'ai mis la formule "=MOD((B2*B2)-2;(2^13)-1). Sachant qu'en B2, on a 4.
les valeurs de 0 à 13 en commençant à 2 ????
en mettant ça dans mon tableur il n'y a aucun problème :
(vu que U0 = 4, le "n" de la cellule A2 est 0 de U0, d'autres valeurs ne riment à rien)
ensuite on sélectionne les deux seules cellules A3 et B3 et on "tire" vers le bas :
si au lieu d'afficher les formules, on affiche les valeurs, tout baigne.
on a bien Up-2 = U13-2 = U11 = 0 dans la cellule B de la ligne où A = 11
amélioration :
au lieu de mettre 2^13 "en dur" ce qui nécessite de tout recommencer si on cherche les autres nombres de Mersenne, on peut avoir intérêt à mettre cette valeur dans une case du tableur et d'y faire référence en tant qu'adresse absolue
par exemple si je mets cette valeur 13 dans la case C2 :
dans B3 au départ je mets =MOD(B2*B2-2; 2^$C$2-1)
$C$2 est l'adresse absolue de la case C2, évitant qu'il ne modifie C2 en C3, C4 etc lors du "tirage vers le bas"
pour tester un autre nombre de Mersenne, il suffira juste de modifier le contenu de cette case C2 et de tirer "un peu plus loin" les colonnes A et B
Bonjour,
j'ai fait ce que vous m'avez dit et ça marche beaucoup mieux! Merci ! Sinon je souhaiterai vous demander une nouvelle fois de l'aide s'il vous plaît. Comment on peut déterminer le nombre de calcul nécessaire pour tester M29 et M23, alors qu'ils ne sont pas premier ?
Regulus :
c'est dans l'énoncé !!
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :