Polytechnique Montréal
Département de génie informatique et de génie logiciel
INF1005D - Hiver 2025
Travail pratique nº2
INTRODUCTION À LA PROGRAMMATION PYTHON
Date limite de remise : Dimanche 2 février 2025, avant 23h30
Répartition des points du TP (20 points)
EXERCICE POINTS
Exercice 1 2 points
Exercice 2 3 points
Exercice 3 3 points
Exercice 4 4 points
Exercice 5 4 points
Exercice 6 4 points
1
Objectifs du TP
Se familiariser avec le langage Python. Apprentissage de déclaration de variables, utilisation des
entrées et sorties via la console, conversion de types et des expressions arithmétiques.
Durée
Deux séances de laboratoire.
Fichier à remettre
Un fichier ZIP nommé matricule1_matricule2.zip contenant tous les [Link]. Assurez-vous
qu’à l’ouverture de l’archive, on retrouve directement les fichiers sans passer par aucun dossier.
Attention! Pour que les tests unitaires fonctionnent correctement, les affichages de
votre programme doivent être parfaitement identiques aux affichages des exemples
contenus dans chaque fichier d’exercice.
2
Exercice 1 – Informations sur l’utilisateur (2 points)
Écrivez un programme qui demande à l'utilisateur son nom, son année de naissance et sa ville de
naissance. Ensuite, le programme salue l’utilisateur en utilisant ses informations.
Exemple d'exécution #1
Veuillez entrer votre nom: John
Veuillez entrer votre année de naissance: 2003
Veuillez entrer votre ville de naissance: Montréal
Bonjour John, vous êtes né(e) en 2003 à Montréal.
Exercice 2 – Somme des premiers carrés parfaits (3 points)
Écrivez un programme qui demande à l’utilisateur un entier positif n et qui calcule la somme des n
premiers carrés parfaits selon l’équation suivante. Indice :
Exemple d'exécution #1
Entrer un entier : 3
La somme des 3 premiers carrés parfaits est : 14
Exemple d'exécution #2
Entrer un entier : 5
La somme des 5 premiers carrés parfaits est : 55
3
Exercice 3 – Programme qui convertit en heures, minutes et
secondes (3 points)
Écrivez un programme qui demande à l'utilisateur d'entrer un nombre entier de secondes et qui
affiche ensuite la conversion correspondante en nombre d'heures, minutes et secondes.
Rappel : Une heure contient 3600 secondes et une minute contient 60 secondes.
Exemple d'exécution #1
Veuillez entrer un nombre entier de secondes : 3610
3610 secondes correspondent à 1 heure(s), 0 minute(s) et 10 seconde(s)
Exemple d'exécution #2
Veuillez entrer un nombre entier de secondes : 192
192 secondes correspondent à 0 heure(s), 3 minute(s) et 12 seconde(s)
Exemple d'exécution #3
Veuillez entrer un nombre entier de secondes : 9999999
9999999 secondes correspondent à 2777 heure(s), 46 minute(s) et 39 seconde(s)
Exercice 4 – Intersection d’une parabole et une ligne (4 points)
Écrivez un programme qui calcule les 2 points d’intersection entre une droite de forme
𝑦 = 𝑎! 𝑥 + 𝑏! et d’une parabole de forme 𝑦 = 𝑎" 𝑥 ! + 𝑏"
Indice : vous pouvez trouver les racines du polynôme à l’aide de la formule :
#$ ±√$ ! #()*
𝑥= !)
Note : Assumez que la parabole et la droite auront toujours au moins une intersection.
Exemple d'exécution
Entrez le nombre a1: 3
Entrez le nombre a2: 1
Entrez le nombre b1: -1
Entrez le nombre b2: 0
Premier point d’intersection: 0.7675918792439983
Deuxieme point d'intersection: -0.4342585459106649
4
Exercice 5 – Billets de cinéma (4 points)
Écrire un programme qui calcule le montant à payer pour une soirée au cinéma en groupe.
L'utilisateur devra entrer le prix d'un billet de cinéma, le nombre de membres dans le groupe et le
pourcentage de réduction accordé pour les groupes.
Notes : Tous les prix affichés doivent être arrondis à deux chiffres après la virgule.
Exemple d'exécution #1
Quel est le prix d'un billet de cinéma? 12.50
Quelle est la réduction pour les groupes (en pourcentage)? 10
Combien de personnes y a-t-il dans le groupe? 5
Le prix total est de 56.25$ et chacun doit payer 11.25$.
Exemple d'exécution #2
Quel est le prix d'un billet de cinéma? 10.00
Quelle est la réduction pour les groupes (en pourcentage)? 15
Combien de personnes y a-t-il dans le groupe? 8
Le prix total est de 68.0$ et chacun doit payer 8.5$.
ATTENTION : Il faut que les résultats finaux aient au maximum 2 chiffres après la virgule.
5
Exercice 6 – Crédits pour compléter le baccalauréat (4 points)
Écrivez un programme qui demande à l'utilisateur d'entrer le nombre de crédits qu'il a complété.
À partir de cela, le programme doit afficher combien de sessions il lui reste pour compléter son
baccalauréat, sachant qu'il faut 120 crédits pour compléter un baccalauréat. Il faut ensuite afficher le
nombre d'années qu'il lui reste pour compléter son baccalauréat, en supposant qu'il prend 15 crédits
par session et 2 sessions par an.
ATTENTION: Il faut arrondir le nombre de sessions et d'années à l'entier supérieur.
Astuce : utilisez [Link]() pour arrondir à l'entier supérieur
ð [Link](3.2) retournera 4
Exemple d'exécution #1
Combien de crédits avez-vous complété? 60
Il vous reste 60 crédits, donc 4 sessions pour compléter votre baccalauréat.
Il vous reste donc 2 ans d'étude.
Exemple d'exécution #2
Combien de crédits avez-vous complété? 96
Il vous reste 24 crédits, donc 2 sessions pour compléter votre baccalauréat.
Il vous reste donc 1 ans d'étude.
Exemple d'exécution #3
Combien de crédits avez-vous complété? 87
Il vous reste 33 crédits, donc 3 sessions pour compléter votre baccalauréat.
Il vous reste donc 2 ans d'étude.
6
Critères de correction de chaque exercice
Les pourcentages représentent la proportion des points alloués à un exercice.
Critère Valeur
Le code répond aux exigences de l’énoncé et s’exécute sans erreurs 25 %
Les tests unitaires fonctionnent 50 %
Les variables sont bien nommées et il y a des commentaires lorsque nécessaire. 25 %
Total 100 %