Exercice Corrigé Python pour Débutant – Partie 4

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.

Exemple de sortie:

Entrer le nombre de lignes: 5
        *
      * * *
    * * * * *
  * * * * * * *
* * * * * * * * *
Solution:

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.

Exemple de sortie:

Entrer le nombre de lignes: 5
        1 
      2 3 2 
    3 4 5 4 3 
  4 5 6 7 6 5 4 
5 6 7 8 9 8 7 6 5
Solution:

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.

Exemple de sortie:

Entrer le nombre de lignes: 5
* * * * * * * * *
  * * * * * * *
    * * * * *
      * * *
        *
Solution:

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

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *