Inscription / Connexion Nouveau Sujet
Niveau terminale
Partager :

Devoir maison 14

Posté par
Regulus
19-05-16 à 09:26

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!

Posté par
mathafou Moderateur
re : Devoir maison 14 19-05-16 à 11:23

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

Posté par
Regulus
re : Devoir maison 14 19-05-16 à 13:13

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.

Posté par
mathafou Moderateur
re : Devoir maison 14 19-05-16 à 13:52

les valeurs de 0 à 13 en commençant à 2 ????

en mettant ça dans mon tableur il n'y a aucun problème :

Devoir maison 14

(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 :

Devoir maison 14

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

Posté par
Regulus
re : Devoir maison 14 19-05-16 à 15:57

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 ?

Posté par
valparaiso
re : Devoir maison 14 19-05-16 à 16:16

Bonjour à tous
Comment fais tu pour afficher les formules mathafou?
Merci

Posté par
mathafou Moderateur
re : Devoir maison 14 19-05-16 à 17:27

Regulus :
c'est dans l'énoncé !!

Citation :
Mp est premier si, et seulement si, le terme Up-2 est nul.
il suffit donc pour savoir si M29 est premier ou pas de calculer U29-2 = U27 et c'est tout
c'est à dire exactement 27 étapes de calculs intermédiaires des autres Un avec n < 27, dont le résultat ne sert à rien d'autre qu'à calculer le suivant.

(il ne s'agit pas de faire une boucle "tant que Un différent de 0" mais de s'arrêter à p-2 un point c'est tout)

valparaiso :
avec OpenOffice (c'est ce que j'utilise) c'est dans le menu
Outils - Options - OpenOffice Calc - Afficher
je coche ou décoche la case "Formules"

il doit y avoir quelque chose d'équivalent dans Office de Microsoft.



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1675 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !