
Avec IDLE3 créer un script python appelé fonctions_tp2.py (pour l’instant vide.)
Certains exercice (par exemple l’exo2) demandent l’écriture d’un programme. Il faudra alors définir une
fonction sans argument appelée par exemple exo2() dans ce script. Le programme sera testé en exécutant le
script par la commande Run Module ou le raccourci clavier <F5>, puis en faisant un appel de cette fonction.
D’autres exercices (par exemple l’exo4) demandent l’écriture d’une fonction qui sera alors définie dans le
script, puis appelée comme avant.
Essayer également de commenter votre code pour le rendre compréhensible : on peut insérer des commentaires
à peu près n’importe où en les faisant précéder d’un caractère #. Lorsqu’il rencontre ce caractère, l’interpréteur
Python ignore tout ce qui suit, jusqu’à la fin de la ligne courante.
1. (a) Commencer l’écriture du fichier fonctions_tp2.py en y recopiant la définition précédente de la
fonction carre(), puis charger ce fichier.
(b) Faire quelques tests pour comprendre comment Python se comporte avec les variables. Par exemple
taper les instructions : x,y=7,6 carre(4) z=carre(5) z print(x,’**’,y) . . .
2. Au moyen de la fonction input(), inviter l’utilisateur à entrer 2 nombres x(par exemple 3) et y(par
exemple 5) , puis (dans le cas particulier de l’exemple) afficher le message :
3 plus 5 égale 8
3. Utiliser la formuler C= 5 ∗(F−32)/9pour afficher une table de conversion des températures en degrés
Farenheit (F) et de leurs équivalents en degrés Celsius (C) : chaque ligne de la table consistera en deux
valeurs correspondantes, Fvariant de 0 à 300 degrés Farenheit et augmentant de 20 degrés à chaque
ligne. Les degrés Celsius seront arrondis à l’unité.
4. Une année est bissextile si elle est divisible par 4, mais pas par 100, à l’exception des années multiples
de 400 qui sont bien bissextiles.
Ecrire une fonction bissextile() telle que l’appel bissextile(n) affiche «l’année nest bissextile» ou
bien «l’année nn’est pas bissextile» selon le cas, mais ne renvoie aucune valeur.
5. (a) Ecrire une fonction degre2radian() qui convertit en radians un angle fourni au départ sous la forme
(degrés,minutes,secondes).
(b) Ecrire la fonction radian2degre() inverse de la précédente.
6. (a) Définir la fonction factorielle.
(b) Définir la fonction nbzeros() telle que nbzeros(n) renvoie le nombre de zéros qui terminent l’écriture
décimale de l’entier n.
(c) Par combien de zéros se termine 10000 !
7. On appelle suite de Syracuse une suite d’entiers définie ainsi :
On part d’un nombre entier n∈N∗; s’il est pair, on le divise par 2 ; s’il est impair, on le multiple par
3 et on ajoute 1. En répétant l’opération, on obtient une suite d’entiers positifs dont chacun ne dépent
que de son prédécesseur.
Par exemple, la suite de Syracuse du nombre 14 est : 14, 7, 22, 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16,
8, 4, 2, 1, 4, 2 . . .
Ecrire une fonction syracuse(n) qui affiche les termes de la suite de Syracuse de njusque la valeur 1
soit atteinte.
Il a été conjecturé que la suite de Syracuse de n’importe quel entier strictement positif atteint 1. En dépit
de la simplicité de son énoncé, cette conjecture défie depuis de nombreuses années les mathématiciens.
8. Ecrire un programme qui affiche les 20 premiers termes de la table de multiplication par 7, en signalant
à l’aide d’une astérisque ceux qui sont multiples de 3.
Exemple : 7 14 21 * 28 35 42 * 49 . . .
9. Ecrire la fonction triangle(n) qui affiche nlignes de la forme :
∗
∗ ∗
∗ ∗ ∗
.
.
....
∗ ∗ . . . . . . ∗
10. La suite ude Fibonacci est définie par : u0= 1,u1= 2 et un+2 =un+un+1 pour tout entier n.
Ecrire une fonction fibo(n) qui affiche les termes de la suite uqui ne dépassent pas la valeur n.
11. Un nombre parfait est un entier naturel égal à la somme de tous ses diviseurs autres que lui-même. Par
exemple 6=1+2+3 est parfait.
Ecrire une fonction parfait(n) qui affiche tous les nombres parfaits inférieurs ou égaux à n.