EXERCICE N°1 :
Soit n un entier tel que n ≥ 1. On vous donne l’algorithme de la fonction suivante permettant
de calculer le terme U_n d’une suite récurrente U.
Fonction Suite (n: entier) : entier
DÉBUT > U0 ← 1
Un ← 3
Pour i de 2 à n faire > X ← Un
Un ← Un-1 + U0
U0 ← X
Fin Pour > Retourner Un
FIN
Questions :
1- Pour chacune des propositions données ci-dessous, mettre dans chaque case la lettre V
si la proposition est correcte, ou la lettre F dans le cas contraire.
a) L’algorithme ci-dessus correspond à une suite récurrente d’ordre :
[]1 []2 []3
b) En exécutant l’algorithme de la fonction Suite, le résultat retourné par Suite(3) est :
[]3 []4 []5
c) L’algorithme ci-dessus correspond à la suite U définie par :
[ ] U_0=1 ; U_n=U_{n-1}+U_0
[ ] U_0=1 ; U_1=3 ; U_n=U_{n-1}+U_0
[ ] U_0=1 ; U_1=3 ; U_n=U_{n-1}+U_{n-2}
2-On veut vérifier que pour tous n ≥ 2 on a U_n est un entier premier. Donner
l’algorithme d’un module TousPremiers (K) qui permet de vérifier si les K termes de la
suite U (de U_1 à U_K) sont tous premiers ou non. Avec K un entier donné tel que 10 ≤
K ≤ 100.
N.B. * U_0=1 n’est pas premier, on veut vérifier que les termes de U_1 à U_K sont tous
premiers.
On vous donne la fonction Premier(x) qui permet de vérifier si un
entier x est premier ou non. Vous pouvez utiliser cette fonction sans
donner son algorithme.
EXERCICE N°3 :
Mersenne qui est à l'origine un philosophe français, a essayé de faire des travaux scientifiques
et de trouver une formule qui calcule tous les nombres premiers.
Dans son hypothèse, Mersenne a pris tous les nombres qui se calculent à partir de la formule
2ᴾ-1.
Mersenne a étudié plus particulièrement les nombres appelés nombres de Mersenne définis
par :
M_p = 2^p - 1, où p est premier
On veut écrire un programme qui a pour but de vérifier l'exactitude de la propriété qui
suppose que : Tous les nombres de Mersenne sont premiers. Cette propriété est-elle vraie ?
Le programme demandé permet de :
Remplir un fichier d'enregistrements par les N premiers
nombres de Mersenne. Chaque enregistrement de ce fichier est
appelé Mersenne et qui sera composé par les champs suivants :
o p : un entier premier
o x : un entier calculé par la formule 2^p-1
o y : la décomposition en facteurs premiers de x
Extraire dans un autre fichier texte tous les nombres de
Mersenne qui ne sont pas premiers.
Travail demandé :
1. Déclarer les nouveaux types de données nécessaires à ce
programme.
2. Donner l'algorithme du Module RemplirFich(N) permettant de
remplir le fichier "[Link]" par les N premiers nombres de
Mersenne comme expliqué ci-dessus.
3. Donner l'algorithme d'un module qui permet d'extraire dans un
fichier texte "[Link]" les nombres de Mersenne qui ne
sont pas premiers figurants dans le fichier "[Link]" sur chaque
ligne un nombre (Le champ x).
N.B. Dans ce cas, un nombre x est dit premier si sa décomposition en facteurs premiers
contient un seul facteur premier qui est lui-même.