Mini-projets – partie 01

Vous trouverez ici plusieurs mini-projets.

Vous devez effectué un programme python par mini-projet.

Avant de commencer chaque mini-projet, réfléchissez à l’architecture de votre programme (programme principal, fonctions, variables, structures (boucles, conditions, …), …).


Pour ces mini-projets vous aurez besoin de la fonction input ainsi que la bibliothèque random présentées ci-dessous :

La fonction input

La fonction input permet de demander à l’utilisateur de saisir des informations via le clavier. Lorsque cette fonction est appelée, le programme s’arrête et attend que l’utilisateur saisisse une valeur. Cette valeur est ensuite stockée dans une variable, ce qui permet de la réutiliser plus tard dans le programme.

Exemple d’utilisation

Dans l’éditeur, écrire les instructions suivantes puis exécuter le programme :

prenom = input("Quel est ton prénom ? --> ")
print("Bonjour " + prenom)

Dans cet exemple, le programme demande à l’utilisateur de saisir son prénom. Ce que l’utilisateur tape au clavier est ensuite stocké dans la variable prenom. Le programme utilise cette variable pour afficher un message personnalisé.

Important à savoir : le type de données

Par défaut, la fonction input capture les données saisies sous forme de chaîne de caractères (str), même si l’utilisateur entre un nombre. Cela signifie que si tu veux effectuer des calculs avec la valeur saisie, il faudra convertir cette chaîne de caractères en un type numérique.

Conversion en nombre entier

Si vous voulez demander à l’utilisateur de saisir un nombre et utiliser ce nombre pour faire des calculs, vous devez convertir la chaîne de caractères en un entier avec int().

Exemple d’utilisation

Dans l’éditeur, écrire les instructions suivantes puis exécuter le programme :

n = int(input("Quel nombre veux-tu multiplier par 2 ? --> "))
print(n*2)

Dans cet exemple, l’utilisateur est invité à saisir un nombre. Grâce à int(input(...)), la chaîne de caractères saisie est convertie en un entier avant d’être stockée dans la variable n. Le programme peut ensuite multiplier ce nombre par 2 et afficher le résultat.


La bibliothèque random

La bibliothèque random permet de générer des valeurs aléatoires, ce qui est utile pour un grand nombre d’applications, comme les jeux, les simulations, ou même les tests. Pour utiliser cette bibliothèque, il faut d’abord l’importer au début de ton programme.

Voici comment importer random :

from random import *
Générer un nombre entier aléatoire

Une des fonctions les plus couramment utilisées de cette bibliothèque est randint(), qui génère un nombre entier aléatoire compris dans un intervalle donné.

Voici un exemple :

Dans l’éditeur, écrire les instructions suivantes puis exécuter le programme :

n = randint(0,10)
print(n)

Dans cet exemple, randint(0, 10) génère un nombre entier aléatoire entre 0 et 10 inclus. À chaque exécution du programme, la valeur de n changera, car elle est générée aléatoirement.

Expérimentation

Vous pouvez exécuter ce programme plusieurs fois pour voir comment n prend une nouvelle valeur à chaque exécution, démontrant le caractère aléatoire de la fonction randint().


Ecrire un programme qui affiche le menu suivant sur la console et demande à l’utilisateur d’effectuer un choix.

********** Bienvenue **********
Que voulez-vous faire ?
1- Afficher une table de multiplication de votre choix
2- Afficher toutes les tables de multiplication de 1 à 10
3- Quitter l'application
Votre choix :

Le menu devra s’afficher tant que l’utilisateur n’aura pas envoyé le choix 1, 2 ou 3.

Lorsque l’utilisateur envoie le choix 1, le programme devra lui demander quelle table de multiplication il souhaite afficher puis lui affichera cette table comme sur l’exemple ci-dessous.

3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
.
.
.
3 x 8 = 24
3 x 9 = 27
3 x 10 = 30

Lorsque l’utilisateur envoie le choix 2, le programme devra afficher toutes les tables de multiplication de 1 à 10 comme ci-dessous :

1 x 1 = 1
1 x 2 = 2
1 x 3 = 3
.
.
.
10 x 8 = 80
10 x 9 = 90
10 x 10 = 100

Lorsque l’utilisateur envoie le choix 3, le programme s’arrête.


Ecrire un programme qui affiche le menu suivant sur la console et demande à l’utilisateur d’effectuer un choix.

********** Bienvenue **********
Sur quelle opération voulez-vous vous entrainer ?
1- Addition
2- Soustraction
3- Multiplication
4- Division
5- Quitter l'application
Votre choix :

Le menu devra s’afficher tant que l’utilisateur n’aura pas envoyé le choix 5.

Lorsque l’utilisateur envoie le choix 1, le programme lui proposera d’effectuer une addition entre 2 nombres aléatoires situés en 0 et 100. Il demandera alors le résultat à l’utilisateur et affichera « Bravo ! » ou « Perdu ! » en fonction de la réussite ou non de l’utilisateur.

42 + 12 = 
42 + 12 = 54
Bravo !
42 + 12 = 64
Perdu !

Une fois le résultat donné, le programme devra revenir directement sur le menu.

Le même principe doit être effectué sur les 3 autre menus (soustraction, multiplication, division).

Le programme s’arrête seulement quand le choix 5 est envoyé par l’utilisateur lors du menu.

Rajouter un choix dans le menu pour l’opération division entière ( // ).

Rajouter un choix dans le menu pour l’opération modulo ( % ).


Écrire un programme qui demande à l’utilisateur de choisir une forme géométrique parmi les suivantes : cercle, carré, rectangle. Le programme doit ensuite demander les dimensions nécessaires et calculer :

  1. La surface de la forme choisie.
  2. Le périmètre de la forme choisie.

Le programme doit utiliser des fonctions pour chaque calcul (surface et périmètre) et pour chaque forme géométrique.

Exemple du déroulement attendu :

Choisissez une forme géométrique (cercle, carré, rectangle) : carré
Entrez la longueur d'un côté : 5

La surface du carré est : 25
Le périmètre du carré est : 20

Écrire un programme en Python qui demande à l’utilisateur de saisir le montant d’une addition d’un restaurant, le pourcentage de pourboire qu’il souhaite laisser (par exemple, 15% ou 20%), et le nombre de personnes partageant l’addition. Le programme doit ensuite :

  1. Calculer le montant du pourboire.
  2. Calculer le montant total à payer.
  3. Calculer le montant que chaque personne doit payer si l’addition est partagée.

Exemple du déroulement attendu :

Entrez le montant de l'addition : 100
Entrez le pourcentage de pourboire que vous souhaitez laisser : 15
Entrez le nombre de personnes partageant l'addition : 4

Le montant du pourboire est : 15.0
Le montant total à payer est : 115.0
Chaque personne doit payer : 28.75

Écrire un programme en Python qui pose une série de questions sur des propriétés numériques à l’utilisateur. Le programme doit :

  1. Générer aléatoirement 10 questions sur les propriétés suivantes :
    • Est-ce un carré parfait ?
    • Est-ce un nombre premier ?
    • Est-ce un multiple de X ?
  2. Évaluer si la réponse de l’utilisateur est correcte ou incorrecte.
  3. Compter le nombre de bonnes réponses.
  4. Donner un score final à l’utilisateur à la fin du jeu.

Exemple du déroulement attendu :

Question 1: Est-ce que 16 est un carré parfait ? (oui/non)
Réponse: oui
Correct!

Question 2: Est-ce que 17 est un nombre premier ? (oui/non)
Réponse: oui
Correct!

Question 3: Est-ce que 20 est un multiple de 5 ? (oui/non)
Réponse: non
Incorrect!

...
Votre score final est : 8/10