Avec des exercices corrigés en Python, vous pratiquerez divers concepts du langage Python. Vous commencerez par des exercices Python de base à des exercices plus avancés. La solution est fournie pour chaque exercice. Vous devez essayer de résoudre chaque problème par vous-même avant de vérifier la solution. Si vous avez des questions concernant chaque problème, nous vous encourageons à les poster sur notre forum.
Exercice 1:
Étant donné les variables x=30 et y=20, écrivez un programme Python pour afficher « 30+20=50 ».
Solution 1:
x = 30
y = 20
print("\n%d+%d=%d" % (x, y, x+y))
Solution 2:
x = 30
y = 20
print("{0}+{1}={2}".format(x, y, x + y))
Solution 3:
x = 30
y = 20
print("{}+{}={}".format(x, y, x + y))
Explication:
La méthode format() formate la ou les valeurs spécifiées et les insère dans l’espace réservé de la chaîne. L’espace réservé est défini à l’aide de crochets : {}
Exercice 2:
Écrire un programme en Python qui affiche une demi-pyramide en utilisant des alphabets, en fonction d’un entier N saisi par l’utilisateur.
Exemple de sortie:
Entrer le nombre de lignes: 5
A
B B
C C C
D D D D
E E E E E
Solution:
nbrLignes = int(input("Entrer le nombre de lignes: "))
valeur_ascii = 65
for i in range(nbrLignes):
for j in range(i+1):
alphabet = chr(valeur_ascii)
print(alphabet, end=" ")
valeur_ascii += 1
print()
Explication:
La méthode utilisée dans l’exercice ci-dessus est également similaire aux autres exercices présentés ci-dessus, à l’exception des valeurs ascii qui sont affichées ici. La valeur ascii des alphabets commence à 65 (c’est-à-dire A). Par conséquent, à chaque itération, nous incrémentant la valeur de ascii_value et nous affichons l’alphabet correspondant. Voir aussi: Fonction chr() en Python
Exercice 3:
Écrire un programme en Python qui affiche une demi-pyramide inversée en utilisant des *, en fonction d’un entier N saisi par l’utilisateur.
Exemple de sortie:
Entrer le nombre de lignes: 5
* * * * *
* * * *
* * *
* *
*
Solution:
nbrLignes = int(input("Entrer le nombre de lignes: "))
for i in range(nbrLignes, 0, -1):
for j in range(0, i):
print("* ", end=" ")
print()
Explication:
Cet exemple est similaire à celui d’une pyramide verticale, sauf qu’ici nous partons du nombre total de lignes et qu’à chaque itération, nous décrémentons le nombre de lignes de 1.
Exercice 4:
Écrire un programme en Python qui affiche une demi-pyramide inversée en utilisant des nombres, en fonction d’un entier N saisi par l’utilisateur.
Exemple de sortie:
Entrer le nombre de lignes: 5
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
Solution:
nbrLignes = int(input("Entrer le nombre de lignes: "))
for i in range(nbrLignes, 0, -1):
for j in range(1, i+1):
print(j, end=" ")
print()
Explication:
La seule différence entre une pyramide verticale et une pyramide inversée utilisant des nombres est que la première boucle commence à partir du nombre total de lignes à 0.
Exercice 5:
Écrire un programme en Python qui affiche une Pyramide complète avec des *, en fonction d’un entier N saisi par l’utilisateur.
nbrLignes = int(input("Entrer le nombre de lignes: "))
k = 0
for i in range(1, nbrLignes+1):
for espace in range(1, (nbrLignes-i)+1):
print(end=" ")
while k!=(2*i-1):
print("* ", end="")
k += 1
k = 0
print()
Explication:
Ce type de pyramide est un peu plus compliqué que celles que nous avons vues précédemment.
La boucle extérieure commence à partir de i = 1 jusqu’à i = nbrLignes + 1.
Parmi les deux boucles intérieures, la boucle for affiche les espaces requis pour chaque ligne en utilisant la formule (nbrLignes-i)+1, où nbrLignes représentent le nombre total de lignes et i le numéro de la ligne actuelle.
La boucle while affiche le nombre d’étoiles requis en utilisant la formule 2 * i – 1. Cette formule donne le nombre d’étoiles pour chaque ligne, où ligne est i.
Exercice 6:
Écrire un programme en Python qui affiche une Pyramide complète avec des nombres, en fonction d’un entier N saisi par l’utilisateur.
nbrLignes = int(input("Entrer le nombre de lignes: "))
k = 0
count=0
count1=0
for i in range(1, nbrLignes+1):
for espace in range(1, (nbrLignes-i)+1):
print(" ", end="")
count+=1
while k!=((2*i)-1):
if count<=nbrLignes-1:
print(i+k, end=" ")
count+=1
else:
count1+=1
print(i+k-(2*count1), end=" ")
k += 1
count1 = count = k = 0
print()
Explication:
Comme dans l'exercice précédent, cet exemple utilise également deux boucles à l'intérieur d'une boucle for.
La boucle for externe parcourt chaque ligne.
Nous utilisons ici deux compteurs, count et count1, pour afficher respectivement les espaces et les nombres.
La boucle for interne affiche les espaces requis en utilisant la formule (nbrLignes-i)+1, où nbrLignes est le nombre total de lignes et i le numéro de la ligne actuelle.
La boucle while affiche les nombres où 2 * i - 1 donne le nombre d'éléments dans chaque ligne.
Exercice 7:
Écrire un programme en Python qui affiche une Pyramide complète inversée avec des *, en fonction d'un entier N saisi par l'utilisateur.
nbrLignes = int(input("Entrer le nombre de lignes: "))
for i in range(nbrLignes, 1, -1):
for espace in range(0, nbrLignes-i):
print(" ", end="")
for j in range(i, 2*i-1):
print("* ", end="")
for j in range(1, i-1):
print("* ", end="")
print()
Explication:
Dans cet exemple, nous avons utilisé un total de 4 boucles for.
La boucle for externe itère de i = nbrLignes à i = 1.
La première boucle for interne affiche les espaces requis dans chaque ligne.
La deuxième boucle for interne affiche la première moitié de la pyramide (coupée verticalement), tandis que la dernière boucle for interne affiche l'autre moitié.
Exercice 8:
Écrire un programme en Python qui affiche le triangle de Pascal, en fonction d'un entier N saisi par l'utilisateur.
Exemple de sortie:
Entrer le nombre de lignes: 6
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
Solution:
nbrLignes = int(input("Entrer le nombre de lignes: "))
coef = 1
for i in range(1, nbrLignes+1):
for espace in range(1, nbrLignes-i+1):
print(" ",end="")
for j in range(0, i):
if j==0 or i==0:
coef = 1
else:
coef = coef * (i - j)//j
print(coef, end = " ")
print()
Explication:
Dans cet exemple, nous avons utilisé trois boucles for.
La boucle externe itère de 1 à nbrLignes + 1.
La première boucle interne affiche les espaces.
La deuxième boucle interne commence par trouver le nombre à afficher à l'aide de l'instruction coef = coef * (i - j) // j, puis l'affiche. Ici, i est le numéro de ligne et j est la valeur comprise entre 0 et i.
Exercice 9:
Écrire un programme en Python qui affiche le triangle de Floyd, en fonction d'un entier N saisi par l'utilisateur.
Exemple de sortie:
Entrer le nombre de lignes: 4
1
2 3
4 5 6
7 8 9 10
Solution:
nbrLignes = int(input("Entrer le nombre de lignes: "))
n = 1
for i in range(1, nbrLignes+1):
for j in range(1, i+1):
print(n, end=" ")
n += 1
print()
Explication:
Il s'agit de l'un des types de schéma les plus faciles à réaliser.
La variable n est initialisée à la valeur 1.
La boucle for externe itère de 1 au nombre total de lignes.
La boucle for interne commence de 1 à i + 1, où i est le numéro de la ligne. Après chaque itération, la valeur de n est incrémentée.
Exercice 10:
Écrire un programme Python pour calculer la consommation moyenne d'une voiture à partir d'une distance parcourue (en km, valeur entière) et du carburant consommé (en litres, nombre flottant).
Exemple de sortie:
Entrer la distance totale en km: 470
Entrer le carburant total dépensé en litres: 5
Consommation moyenne (km/litre) = 94.000
distance = int(input("Entrer la distance totale en km:"))
carburant = int(input("Entrer le carburant total dépensé en litres:"))
print("Consommation moyenne (km/litre) = ",distance/carburant);
Éditeur de code Python: Testez votre code en ligne!
QCM Python – Partie 1Bienvenue dans notre QCM Python ! Que vous soyez débutant ou déjà expérimenté en programmation, ce questionnaire à choix multiples est l’occasion parfaite de tester…Lire plus