TD7
Calcul numérique (avec Maple)
Licence 1 SMS Math Info, Math Physique 2006-2007
Liste et liste de listes
Question 1 :
On appelle nombres premiers jumeaux les couples (p, p+2) où p et p+2 sont premiers.
a) Ecrire une procédure, que l’on nommera twin, qui prend comme argument un entier x et
qui retourne la liste de couples (liste de listes) de nombre premiers jumeaux inférieurs
ou égaux à x.
b) Ecrire une procédure qui prend en paramètre une liste de couples (liste de listes) de
nombres premiers jumeaux et qui l’affiche.
Question 2 :
Un nombre parfait est un nombre égal à la somme de tous ses diviseurs, par exemple 6 =
1+2+3.
a) Ecrire une procédure qui détermine si un nombre entier positif donné est parfait ou non.
La procédure prendra en paramètre le nombre n et retournera vrai si ce nombre est parfait.
Pour tester la “divisibilité” de a par b, on utilisera l’expression booléenne suivante :
a mod b = 0 ;
Remarque : la commande mod donne le reste de la division euclidienne de a par b.
b) Ecrire une procédure qui retourne la liste des nombres parfaits sur l’intervalle [1, 1000].
Question 3 :
a) Ecrire une procédure qui retourne le nombre de nombres premiers sur un intervalle [a, b]
b) Ecrire une procédure qui comptabilise le nombre de nombres premiers sur les intervalles
[0, 999], [1000, 1999], … . Cette procédure retournera une liste de couples (liste de listes)
où chaque couple est :
- le numéro d’intervalle,
- et l’entier comptabilisant le nombre de nombres premiers sur l’intervalle.
c) Afficher sur un graphique les points 2D obtenus précédemment de sorte d’obtenir un
graphique comme celui de la figure ci dessous.