0% ont trouvé ce document utile (0 vote)
50 vues10 pages

Chapitre 1 Python

Transféré par

Mç Dåïşhikąñ
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
50 vues10 pages

Chapitre 1 Python

Transféré par

Mç Dåïşhikąñ
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Lorsqu’un langage est interprète le système n’a pas besoin de de traduire pour

l’exécuter
Print est une fonction de base en python c’est à dire qu’il retourne une valeur

Exercice 1: écrire un programme qui prend deux entiers en entrée et affiche leur
somme
Exo 2 : écrire un programme qui prend un nombre en entrée et vérifie s’il est
multiple de 3 et affiche solo et si il est multiple de 5 il affiche learn et pour les
nombres multiple de 3et 5 sololearn
Exo1 : # Demande à l'utilisateur de saisir deux entiers
num1 = int(input("Entrez le premier entier: "))
num2 = int(input("Entrez le second entier: "))

# Calcule la somme des deux nombres


somme = num1 + num2

# Affiche la somme
print("La somme des deux nombres est:", somme)

exo 2 : # Demande à l'utilisateur de saisir un nombre


nombre = int(input("Entrez un nombre: "))

# Vérifie les conditions et affiche les résultats


if nombre % 3 == 0 and nombre % 5 == 0:
print("sololearn")
elif nombre % 3 == 0:
print("solo")
elif nombre % 5 == 0:
print("learn")
else:
print("Le nombre n'est ni multiple de 3 ni de 5")
replease ne peut être utiliser sans une chaine de caractère
permet de subdiviser la chaine de caractere en tableau
for i in range(10): # Ne pas oublier les deux points!!
x = 2 # Attention ne pas oublier une tab. en debut de ligne sinon erreur!!!
print(x*i) # Ne pas oublier la tabulation en debut de ligne!! # Tapez encore une
fois <Enter> si vous Ãantes en ligne de commande

Voici deux exercices difficiles portant uniquement sur les bases de Python :

Exercice 1 : Analyse des statistiques d'un texte

Sujet : Écrivez un programme en Python qui analyse un texte donné par


l'utilisateur et génère les statistiques suivantes :

1. Le nombre total de mots dans le texte.

2. Le nombre de caractères (y compris les espaces).

3. Le nombre de caractères sans les espaces.


4. Le mot le plus fréquent et son nombre d'occurrences.

5. Le nombre de phrases dans le texte (une phrase se termine par un point, un


point d'interrogation ou un point d'exclamation).

Contraintes :

Utilisez des structures de contrôle (boucles et conditions) pour l'analyse.

Vous ne devez pas utiliser de bibliothèques externes pour résoudre ces


questions.

---

Exercice 2 : Système de gestion de factures simplifié


Sujet : Créez un programme Python pour un système de gestion de factures
simplifié. Le programme doit permettre à un utilisateur de :

1. Saisir plusieurs articles achetés avec leur prix unitaire et quantité.

2. Afficher un récapitulatif des articles sous forme de tableau.

3. Calculer et afficher le montant total à payer avec une TVA de 20 %


appliquée.

Contraintes :

L'utilisateur doit pouvoir entrer les articles un par un (nom, prix, quantité).

Le programme doit continuer à demander de nouveaux articles tant que


l'utilisateur ne saisit pas "stop" pour arrêter.

À la fin, le programme doit afficher un tableau (simple formatage) avec :

Le nom de l'article
Le prix unitaire

La quantité

Le total par article (prix * quantité)

Le montant total avant et après application de la TVA.

Explication :

 Découpage des mots : On utilise la méthode split() pour découper le


texte en mots. Chaque mot est ensuite nettoyé de sa ponctuation avec
strip().
 Calcul des caractères : On utilise len() pour obtenir le nombre de
caractères, et replace(" ", "") pour enlever les espaces et compter les
caractères restants.
 Fréquence des mots : Un dictionnaire est utilisé pour stocker le nombre
d'occurrences de chaque mot. Ensuite, max() est utilisé pour obtenir le
mot le plus fréquent.
 Décompte des phrases : Le nombre de phrases est calculé en comptant
les caractères correspondant à un point (.), un point d'interrogation (?), ou
un point d'exclamation (!).

Explication :

 Saisie des articles : Le programme demande à l'utilisateur de saisir des


articles un par un. Lorsque l'utilisateur tape "stop", la saisie s'arrête.
 Calcul des totaux : Le total par article est calculé en multipliant le prix
unitaire par la quantité. Le montant total avant TVA est accumulé.
 Affichage du récapitulatif : Un tableau est affiché avec les informations
sur les articles (nom, prix unitaire, quantité, total).
 Calcul de la TVA : La TVA est calculée à 20 % du total hors TVA, puis
le montant total TTC est affiché.

from collections import Counter

mots = ["Bonjour", "tout", "le", "monde", "le", "monde", "est", "beau"]

# Compte les occurrences de chaque mot


compte_mots = Counter(mots)

# Trouve le mot le plus fréquent et son nombre d'occurrences


mot_le_plus_frequent, nombre_occurrences = compte_mots.most_common(1)
[0]

print("Le mot le plus fréquent est:", mot_le_plus_frequent)


print("Il apparaît", nombre_occurrences, "fois.")

1. from collections import Counter :


o Cette ligne importe la classe Counter du module collections.
Counter est une classe spécialement conçue pour compter les
éléments dans un itérable (comme une liste).
2. mots = ["Bonjour", "tout", "le", "monde", "le", "monde", "est",
"beau"] :
o On définit ici une liste de mots avec laquelle nous allons travailler.
3. compte_mots = Counter(mots) :
o On crée un objet Counter nommé compte_mots. Cet objet va
contenir les mots de la liste mots comme clés et leur nombre
d'occurrences comme valeurs. En d'autres termes, il va compter
combien de fois chaque mot apparaît dans la liste.
4. mot_le_plus_frequent, nombre_occurrences =
compte_mots.most_common(1)[0] :
o compte_mots.most_common(1) : Cette partie trouve les éléments
les plus communs dans compte_mots. En spécifiant 1, on demande
seulement le premier élément (le plus fréquent).
o [0] : On prend le premier élément de la liste retournée par
most_common(1). Cet élément est un tuple contenant le mot le plus
fréquent et son nombre d'occurrences.
o mot_le_plus_frequent, nombre_occurrences = ... : On "déballe" ce
tuple en deux variables : mot_le_plus_frequent pour le mot et
nombre_occurrences pour son nombre d'occurrences.
5. print("Le mot le plus fréquent est:", mot_le_plus_frequent) :
o Affiche une phrase indiquant le mot le plus fréquent.
6. print("Il apparaît", nombre_occurrences, "fois.") :
o Affiche une phrase indiquant le nombre d'occurrences du mot le
plus fréquent.

En résumé : Ce code utilise la puissance de Counter pour compter efficacement


les mots dans une liste, puis trouve rapidement le mot le plus fréquent et son
nombre d'occurrences. C'est une solution élégante et concise pour ce type de
problème.

Explication ligne par ligne :

1. def gestion_factures_simple(): :
o Définit une fonction nommée gestion_factures_simple qui va
contenir le code pour gérer la saisie et le calcul des factures.
2. articles = {} :
o Crée un dictionnaire vide nommé articles. Ce dictionnaire servira à
stocker les informations de chaque article (nom, prix, quantité,
total).
3. total_ht = 0 :
o Initialise une variable total_ht à 0 pour stocker le montant total
hors taxe.
4. while True: :
o Commence une boucle infinie. Cette boucle permettra de saisir
plusieurs articles jusqu'à ce que l'utilisateur entre 'stop'.
5. nom_article = input(...) :
o Demande à l'utilisateur de saisir le nom de l'article.
6. if nom_article.lower() == 'stop': :
o Vérifie si l'utilisateur a saisi 'stop'. Si oui, on sort de la boucle
while.
7. while True: :
o Commence une deuxième boucle while pour gérer la saisie du prix
et de la quantité. Cette boucle permet de s'assurer que l'utilisateur
entre des valeurs numériques valides.
8. try: ... except ValueError: :
o Essaye de convertir les entrées de l'utilisateur en nombres à virgule
flottante (prix) et en entiers (quantité). Si une erreur se produit (par
exemple, si l'utilisateur entre une lettre), le bloc except est exécuté
et affiche un message d'erreur.
9. total_article = prix_unitaire * quantite :
o Calcule le total pour l'article en cours.
10.articles[nom_article] = ... :
o Ajoute un nouvel élément au dictionnaire articles. La clé est le nom
de l'article et la valeur est un dictionnaire contenant les détails de
l'article.
11.total_ht += total_article :
o Ajoute le total de l'article au montant total hors taxe.
12.print("\nRécapitulatif :") :
o Affiche un titre pour le récapitulatif.
13.for article, details in articles.items(): :
o Itère sur les éléments du dictionnaire articles. Pour chaque article,
article contient le nom de l'article et details contient le dictionnaire
avec les détails de l'article.
14.print(f"{article:<20} ...") :
o Affiche les informations de l'article en utilisant des formatages
pour aligner les colonnes.
15.tva = 0.2 * total_ht :
o Calcule le montant de la TVA (20% du total hors taxe).
16.total_ttc = total_ht + tva :
o Calcule le montant total toutes taxes comprises.
17.print(f"\nTotal HT : ...") :
o Affiche les montants totaux HT, TVA et TTC.

En résumé :

Ce code permet de saisir les informations d'un nombre quelconque d'articles, de


calculer les totaux et d'afficher un récapitulatif. L'utilisation d'un dictionnaire
pour stocker les informations des articles rend le code plus clair et plus flexible.

Est-ce que tu as d'autres questions sur ce code ou sur la programmation en


Python ?

Vous aimerez peut-être aussi