Planche de TD pour un cours dispensé à l’université de Rennes 2
Le but de cette séance est de réaliser vos premiers programmes en Python dans l’IDE (Integrated Development Environment) PyCharm. Sachez que la documentation Python est de très bonne qualité : utilisez-la (https://docs.python.org/3/tutorial/).
Lors de ce TD, vous allez créer, sur votre disque M:/
, un répertoire dans lequel vous travaillerez tout au long du semestre. Sauf indication contraire, vous créerez, pour chaque séance de TD, un nouveau fichier Python dans lequel vous écrirez votre code. Pour ce premier TD, vous serez guidés (un peu plus bas dans cet énoncé) dans la création de votre répertoire/projet Python et du fichier Python correspondant au TD1.
Démarrez PyCharm (qui se trouve dans le dossier Développement du menu Démarrer, sous l’item JetBrains) et créez un nouveau projet nommé L2_Python dans un endroit bien identifié (vous utiliserez ce projet tout au long du semestre) de votre disque M:/
.
Ajoutez un nouveau fichier Python à votre projet, que vous nommerez td1
.
Dans ce nouveau nouveau fichier, votre code sera organisé de la manière suivante :
# Section 1 : les imports (peut être vide, selon les TD)
# Section 2 : les définitions de fonctions
def fibonacci(n):
[...]
def mon_autre_fonction(truc, machin):
[...]
# Section 3 : les tests (un ou plusieurs par fonction codée)
# Vous prendrez soin d'indiquer sous l'appel de fonction
# la sortie observée.
print(fibonacci(3))
# [Sortie] 3
Notamment, vous définirez vos fonctions en début de fichier et les appels seront listés en fin de fichier. De cette manière, vous pourrez, d’une question à l’autre, réutiliser les fonctions déjà codées au besoin.
Écrivez une fonction duree_secondes
qui prend en argument une durée en heures, minutes, secondes, exprimée sous la forme de trois variables, et qui renvoie la durée équivalente en nombre de secondes.
Écrivez une fonction delta_secondes
qui retourne la différence (en secondes) entre deux durées exprimées en heures, minutes, secondes. On considère que la première durée est toujours supérieure à la seconde.
Écrivez une fonction table
qui prenne pour argument une base et affiche la table de multiplication de cette base. Par exemple table(5)
affichera la table de 5, soit une sortie de la forme :
5*1=5
5*2=10
[...]
5*10=50
Écrivez une fonction aire_perimetre_rectangle
qui retourne l’aire et le périmètre d’un rectangle dont les longueurs des côtés sont passés en argument.
Analysez la structure des paroles de la chanson La jument de Michao et écrivez une fonction qui affiche ces paroles dans le terminal pour un nombre d’années n
initial passé en argument. Voici la structure de la chanson pour n=4
:
C’est dans 4 ans je m’en irai. J’entends le loup et le renard chanter. {2x}
J’entends le loup, le renard et la belette. J’entends le loup et le renard chanter. {2x}
C’est dans 3 ans je m’en irai. La jument de Michao a passé dans le pré.
La jument de Michao et son petit poulain. A passé dans le pré et mangé tout le foin. {2x}
L’hiver viendra les gars, l’hiver viendra. La jument de Michao, elle s’en repentira. {2x}
C’est dans 2 ans je m’en irai. J’entends le loup et le renard chanter. {2x}
J’entends le loup, le renard et la belette. J’entends le loup et le renard chanter. {2x}
C’est dans 1 ans je m’en irai. La jument de Michao a passé dans le pré.
La jument de Michao et son petit poulain. A passé dans le pré et mangé tout le foin. {2x}
L’hiver viendra les gars, l’hiver viendra. La jument de Michao, elle s’en repentira. {2x}
Écrivez une fonction somme
qui prenne en entrée 2, 3, ou 4 nombres et en retourne la somme.
Écrivez une version améliorée de la fonction table
, que vous appellerez table_multiplication
, qui prenne en entrée une base, un multiplicateur de début et un autre de fin et affiche la table de multiplication de cette base entre les deux bornes fournies. Par exemple table_multiplication(5, 4, 7)
affichera une sortie de la forme :
5*4=20
5*5=25
5*6=30
5*7=35
Notez qu’un appel à table_multiplication(5)
devra avoir le même effet qu’un appel à table(5)
f
contient un ou plusieurs appels à la même fonction f
avec des paramètres différents) permettant de calculer le terme de rang de la suite de Fibonacci définie par :fibonacci
qui prend en argument le rang n
et renvoie la valeur du terme.