0% ont trouvé ce document utile (0 vote)
4 vues28 pages

Cours3 Python

Ce document présente un cours de programmation Python pour le niveau MPSI, axé sur les structures itératives, notamment les boucles 'for' et 'while'. Il inclut des exemples pratiques pour illustrer l'utilisation de ces structures, ainsi que des exercices pour renforcer l'apprentissage. Le cours couvre également les boucles imbriquées pour traiter des structures complexes.

Transféré par

aidahbaba83
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 PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
4 vues28 pages

Cours3 Python

Ce document présente un cours de programmation Python pour le niveau MPSI, axé sur les structures itératives, notamment les boucles 'for' et 'while'. Il inclut des exemples pratiques pour illustrer l'utilisation de ces structures, ainsi que des exercices pour renforcer l'apprentissage. Le cours couvre également les boucles imbriquées pour traiter des structures complexes.

Transféré par

aidahbaba83
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 PDF, TXT ou lisez en ligne sur Scribd

Programmation python

Chapitre 2
Public :MPSI

Année Scolaire: 2024-2025 1


Plan du cours

Chapitre 1 : Introduction à Python et à son environnement & les types simples

Chapitre 2 : Instructions conditionnelles et itératives

Chapitre 3 : Les fonctions et modules

Chapitre 4 : Listes, chaines de caractères et dictionnaires

Chapitre 5 : Algorithmes classiques de Recherche et de Tris

Chapitre 6 : Les fichiers

Chapitre 7 : Introduction aux bibliothèques scientifiques


Année Scolaire: 2024-2025 2
Instructions itératives
Les structures répétitives
Il arrive souvent dans un programme qu'une même action soit répétée
plusieurs fois.
• Ecrire un programme qui permet d’afficher le mot ‘’bonjour’’ 50 fois.
 50 : nombre de répétition (itération).
 Le traitement à répéter le mot ‘’Bonjour’’.
• Pour gérer ces cas, on utilise des boucles qui ont pour effet de répéter
plusieurs fois une même instruction.
• Deux formes existent : la première, si le nombre de répétitions est connu
avant l'exécution, la seconde s'il n'est pas connu.

Année Scolaire: 2024-2025 3


Structures itératives

Année Scolaire: 2024-2025 4


Structures itératives
La structure répétitive for
La structure répétitive for permet de répéter une liste d’instructions un
nombre connu de fois.

Et si on a besoin d’afficher ou de manipuler des valeurs (de 0 à n par exemple)


on utilise la fonction range
Année Scolaire: 2024-2025 5
Structures itératives
La structure répétitive for

Année Scolaire: 2024-2025 6


Structures itératives
La structure répétitive for
Pour manipuler des valeurs (de 0 a 4 par exemple) on utilise la fonction range(5)

Exemple:

Résultat:

Année Scolaire: 2024-2025 7


Structures itératives
La structure répétitive for

Exemple:

Année Scolaire: 2024-2025 8


Structures itératives
La structure répétitive for

Exemple:

Année Scolaire: 2024-2025 9


Structures itératives
La structure répétitive for
Exemple : Afficher 10 fois ’’Bonjour tout le monde’’

Année Scolaire: 2024-2025 10


Structures itératives
La structure répétitive for
Exemple1 : Ecrire un programme [Link] qui affiche les nombres entiers entre 0 et
20.

for i in range(21): # range(21) génère les nombres de 0 à 20


print(i)

Exemple2 : Ecrire un programme [Link] qui affiche les nombres pairs entre 0
et 20?.
for i in range(21): # range(21) génère les nombres de 0 à 20
if i % 2 == 0: # Vérifie si le nombre est divisible par 2
print(i)
Année Scolaire: 2024-2025 11
Structures itératives
La structure répétitive for
Exemple3 :Écrive un programme en Python qui demande à l'utilisateur un nombre entier n
et un autre entier m, puis affiche les m premiers multiples de n.

# Demande à l'utilisateur d'entrer un nombre


n = int(input("Entrez un nombre : "))
m = int(input("Entrez le nombre de multiples : "))

# Boucle for pour afficher les multiples


for i in range(1, m + 1):
print(f"{n} x {i} = {n * i}")

Année Scolaire: 2024-2025 12


Structures itératives
La structure répétitive while

la condition (dite condition de contrôle de la boucle) est évaluée à chaque itération.


Les instructions (corps de la boucle) sont exécutés tant que la condition est vraie, on
sort de la boucle dès que la condition devient fausse.

Attention aux boucles infinies, vérifier que la condition d'arrêt sera bien atteinte
après un certain nombre d'itérations
Année Scolaire: 2024-2025 13
Structures itératives
La structure répétitive while
Pour manipuler des valeurs (de 0 a 4 par exemple) on peut utiliser aussi la Boucle while.

Année Scolaire: 2024-2025 14


Structures itératives
La structure répétitive while
Exemple 1: Écrire un programme qui demande un entier positif, et le rejette tant que le
nombre saisi n’est pas conforme.

N= float(input("Entrez un nombre positif"))


while (N < 0):
N=float(input("Entrez un nombre positif"))
print(N, "est positif")

Année Scolaire: 2024-2025 15


Structures itératives
La structure répétitive while
Pour manipuler des valeurs (de 0 a 4 par exemple) on peut utiliser aussi la Boucle while.

end= : Modifier la fin d’un print

Par défaut, print() termine chaque affichage


avec un saut de ligne (\n).
Avec end=, on peut changer ce
comportement.

Année Scolaire: 2024-2025 16


Structures itératives
La structure répétitive while

i=0
while (i < 5):
print(i)
if i==2:
break : Interruption de la boucle
break
break permet de sortir immédiatement d'une boucle
i+=1
(for ou while), même si la condition de la boucle est
encore vraie.

Année Scolaire: 2024-2025 17


Structures itératives
La structure répétitive while

i=0
i=0
while (i < 5):
while (i < 5):
i+=1
print(i)
if i==2:
continue : Passer à l’itération if i==2:
continue suivante continue
print(i) continue permet de sauter
l’exécution du reste du code pour i+=1
une itération et passer
directement à la suivante.
Année Scolaire: 2024-2025 18
Structures itératives

i=0
while (i < 5): # Tant que i est inférieur à 5, la boucle continue
print(i) # Affiche la valeur actuelle de i
if i == 2: # Si i vaut 2 : Pour éviter la
continue # Passe directement à l'itération suivante boucle infinie, il
faut incrémenter i
i += 1 # Incrémente i avant le continue

Problème dans le Code :


Lorsque i == 2, l’instruction continue est exécutée.
continue force la boucle à sauter directement à l’itération suivante sans exécuter les
instructions suivantes, y compris l'incrémentation (i += 1).Cela signifie que i restera
toujours égal à 2 après ce point.
Comme i n'augmente plus, la condition while (i < 5) restera toujours vraie, entraînant
une boucle infinie.
Année Scolaire: 2024-2025 19
Structures itératives

Conseil : Utilisez break pour arrêter une boucle, continue pour ignorer une itération, et
end= pour formater la sortie d'affichage !
Année Scolaire: 2024-2025 20
Structures itératives

Exercice :
Écrivez un programme en Python qui demande à l’utilisateur de
saisir deux nombres a et b (avec a < b). Le programme doit
afficher le premier multiple de 7 trouvé dans cet intervalle.
Si aucun multiple de 7 n'est trouvé, affichez "Aucun multiple
trouvé".

Année Scolaire: 2024-2025 21


Solution avec while :
# Demande des bornes à l'utilisateur
a = int(input("Entrez la valeur de a : "))
b = int(input("Entrez la valeur de b : "))
# Initialisation de la variable de boucle
i=a
# Parcours de l'intervalle avec while
while i <= b:
if i % 7 == 0: # Vérifie si i est un multiple de 7
print(f"Le premier multiple de 7 dans l'intervalle est : {i}")
break # Arrête la boucle dès qu'on trouve un multiple
i += 1
else:
print("Aucun multiple trouvé")
Année Scolaire: 2024-2025
22
Solution avec for
# Demande des bornes à l'utilisateur
a = int(input("Entrez la valeur de a : "))
b = int(input("Entrez la valeur de b : "))

# Utilisation de for pour parcourir l'intervalle


for i in range(a, b + 1):
if i % 7 == 0:
print(f"Le premier multiple de 7 dans l'intervalle est : {i}")
break # Arrête la boucle dès qu'un multiple est trouvé
else:
print("Aucun multiple trouvé")
23
Année Scolaire: 2024-2025
Les structures répétitives BOUCLE IMBRIQUEE

Une boucle imbriquée est une boucle placée à l’intérieur d’une autre boucle. Cela permet de
parcourir des structures complexes comme des matrices ou d’effectuer des répétitions multiples.

Exemple

for i in range(5):
for j in range(4):
print(i,j)

Année Scolaire: 2024-2025 24


Les structures répétitives BOUCLE IMBRIQUEE

Exemple 1 : Écrivez un programme qui affiche un tableau de multiplication pour les


nombres de 1 à 3 en utilisant des boucles for imbriquées.

La boucle externe (i)


for i in range(1, 4): # Boucle externe (lignes) contrôle les lignes.
La boucle interne (j)
for j in range(1, 4): # Boucle interne (colonnes)
contrôle les colonnes.
print(i * j, end=" ") # Affiche le produit end=" " permet
d'afficher les valeurs sur
print() # Saut de ligne après chaque ligne
la même ligne

Année Scolaire: 2024-2025 25


Les structures répétitives BOUCLE IMBRIQUEE

Exemple 2 : Écrivez un programme qui affiche un triangle d’étoiles avec n lignes


(par défaut n = 5) en utilisant des boucles while imbriquées.

n=5
i=1
while i <= n: # Boucle pour les lignes La boucle externe
contrôle le nombre de
j=1
lignes.
while j <= i: # Boucle pour les colonnes La boucle interne
contrôle le nombre
print("*", end=" ") d’étoiles affichées sur
chaque ligne.
j += 1
print() # Saut de ligne
i += 1
Année Scolaire: 2024-2025 26
Les structures répétitives BOUCLE IMBRIQUEE

Exemple 3 : Ecrire un programme permettant d’imprimer le triangle suivant

n = int(input("Entrez le nombre de lignes : "))


for i in range(1, n + 1):
for j in range(1, i + 1):
print(j, end=" ")
print()

Année Scolaire: 2024-2025 27


Les structures répétitives BOUCLE IMBRIQUEE

for i in range(1, 10):


Exemple 4 : Ecrire un programme qui for j in range(1, 10):
print(f"{i * j}", end=" ")
affiche les 9 tables de multiplication pour print()
les entiers de 1 à 9. Chaque table comporte
# Parcours des tables de 1 à 9
9 éléments, sous la forme suivante: for i in range(1, 10): # Boucle externe
print(f"Table de {i} :")
for j in range(1, 10): # Boucle interne
print(f"{i} x {j} = {i * j}")
print() # Ligne vide pour séparer les tables
i=1
while i <= 9: print(f"Table de {i} :")
j=1
while j <= 9:
print(f"{i} x {j} = {i * j}")
j += 1
print()
i += 1 28

Vous aimerez peut-être aussi