"'O
0
c
:J
0
:<:;
li)
.,,
..--t
c::
:l
0
~
N
"
@
~
.......
0
J::
:;
O'l
"'
·;::::
c::
0
>c::
o.
c::
0
.9
u
ü
:l
.,,
2
o.
~
"
:;
0
11
.,,
0
c:
:l
0
QJ
10.3 • Nombres premiers palindromes
c) Résultats obtenus après exécution
Le salaire de Paul dépassera 3 000 €au mois de janvier 2038.
10.3 NOMBRES PREMIERS PALINDROMES
Énoncé
a) Le problème
Un entier naturel N est dit premier s'il possède exactement deux diviseurs : 1 et luimême. Les nombres premiers sont 2, 3, 5, 7, 11, 13, 17, 19, 23, etc.
Un nombre entier est appelé palindrome s'il peut se lire indifféremment de
gauche à droite ou de droite à gauche. Par exemple, 25852 et 423595324 sont des
palindromes.
18181 est un nombre premier palindrome de cinq chiffres dont la somme des
chiffres est 19. On se propose de déterminer le plus petit nombre premier palindrome
de cinq chiffres dont la somme des chiffres est 19.
b) Les questions
1) Écrire une fonction booléenne estpremier(n) qui renvoie VRAI si n est un
nombre premier et FAUX sinon.
Par exemple, on devra avoir estpremier(l 7) = VRAI et estpremier(l 8) = FAUX.
2) Écrire une fonction somchiffre(n) qui renvoie la somme des chiffres d'un nombre
entier n.
Par exemple, on devra avoir somchiffre(2135) = 11.
3) Quel est le rôle de la fonction change(n) suivante?
Fonction change(n: entier) : entier
Rôle: .. ..................................................................... .
Variables locales : ch ,nb (chaînes), res (entier)
Début
nb - str(n)
ch - "
Pour k de 0 à longueur(nb)-1 Faire
1 ch - nb[k] + ch
Fin Pour
res - int(ch)
Retourner(res)
Fin Fonction
4) Écrire un algorithme affichant le plus petit nombre premier palindrome de cinq
chiffres dont la somme des chiffres est 19. Cet algorithme devra faire appel aux
fonctions estpremier(n), somchiffre(n) et change(n) .
Implémenter sous Python cet algorithme puis exécuter le programme.
229
0
c
:J
0
:<:;
li)
.,,
..--t
c::
:l
0
~
N
"
@
~
.......
0
J::
:;
O'l
"'
·;::::
c::
0
>c::
o.
c::
0
.9
u
ü
:l
.,,
2
o.
~
"
:;
0
11
.,,
0
c:
:l
0
QJ
10.3 • Nombres premiers palindromes
c) Résultats obtenus après exécution
Le salaire de Paul dépassera 3 000 €au mois de janvier 2038.
10.3 NOMBRES PREMIERS PALINDROMES
Énoncé
a) Le problème
Un entier naturel N est dit premier s'il possède exactement deux diviseurs : 1 et luimême. Les nombres premiers sont 2, 3, 5, 7, 11, 13, 17, 19, 23, etc.
Un nombre entier est appelé palindrome s'il peut se lire indifféremment de
gauche à droite ou de droite à gauche. Par exemple, 25852 et 423595324 sont des
palindromes.
18181 est un nombre premier palindrome de cinq chiffres dont la somme des
chiffres est 19. On se propose de déterminer le plus petit nombre premier palindrome
de cinq chiffres dont la somme des chiffres est 19.
b) Les questions
1) Écrire une fonction booléenne estpremier(n) qui renvoie VRAI si n est un
nombre premier et FAUX sinon.
Par exemple, on devra avoir estpremier(l 7) = VRAI et estpremier(l 8) = FAUX.
2) Écrire une fonction somchiffre(n) qui renvoie la somme des chiffres d'un nombre
entier n.
Par exemple, on devra avoir somchiffre(2135) = 11.
3) Quel est le rôle de la fonction change(n) suivante?
Fonction change(n: entier) : entier
Rôle: .. ..................................................................... .
Variables locales : ch ,nb (chaînes), res (entier)
Début
nb - str(n)
ch - "
Pour k de 0 à longueur(nb)-1 Faire
1 ch - nb[k] + ch
Fin Pour
res - int(ch)
Retourner(res)
Fin Fonction
4) Écrire un algorithme affichant le plus petit nombre premier palindrome de cinq
chiffres dont la somme des chiffres est 19. Cet algorithme devra faire appel aux
fonctions estpremier(n), somchiffre(n) et change(n) .
Implémenter sous Python cet algorithme puis exécuter le programme.
229
