100 Exercices Corrigés En Algorithme avec les Organigrammes – Partie 1

La meilleure façon d’apprendre quelque chose est de pratiquer des exercices. Nous avons préparer ces exercices corrigés pour les personnes (débutantes ou intermédiaires) qui sont familières avec les algorithmes et programmation. Nous espérons que ces exercices vous aideront à améliorer vos compétences sur les algorithmes et programmation. Les exercices corrigés suivantes sont actuellement disponibles, nous travaillons dur pour ajouter plus d’exercices. Bon apprentissage!

Vous pouvez lire notre tutoriel sur les algorithmes avant de résoudre les exercices suivants.

 
 

1. Écrire un algorithme pour afficher le message ‘Hello, World!’ sur l’écran.

Exemple de sortie:

Hello World!
Algorithme HelloWorld
Début  
  Ecrire("Hello, World!")
Fin

Dans cet algorithme, nous avons utilisé le mot « Écrire » pour afficher la chaîne de caractères Hello, world! sur notre écran. Voici l’organigramme de cet algorithme:

 
 

2. Écrire un algorithme permettant la saisie de deux nombres et l’affichage de leur somme.

Exemple de sortie:

Entrer 1er nombre: 10
Entrer 2éme nombre: 5
La somme de 10 et 5 = 15
Algorithme SommeDeuxNombres
Variables n1,n2,s :réels
Début  
 Ecrire("Entrer 1er nombre:") 
 Lire(n1)
 Ecrire("Entrer 2éme nombre:") 
 Lire(n2)
 s ← n1 + n2 
 Ecrire("La somme de ",n1,"et",n2,"=",s)
Fin

Cet algorithme invite l’utilisateur à saisir deux nombres, les additionne, puis affiche le résultat. Voici l’organigramme de cet algorithme:

 
 

3. Écrire un algorithme permettant de permuter le contenu de deux entiers n1 et n2 entrés par l’utilisateur, et afficher ces entiers après permutation.

Exemple de sortie:

Entrer un entier n1 : 10
Entrer un entier n2 : 5
------permutation------
n1 = 5
n2 = 10
Algorithme Permutation

Variables n1,n2,tmp :entiers
Début  
 Ecrire("Entrer un entier n1:") 
 Lire (n1)
 Ecrire("Entrer un entier n2:") 
 Lire (n2)
 
 tmp ← n1 
 n1 ← n2 
 n2 ← tmp 
 
 Ecrire("------permutation------")
 Ecrire("n1 = ",n1)
 Ecrire("n2 = ",n2)
Fin

Cet algorithme déclare d’abord trois variables n1, n2 et tmp, puis demande à l’utilisateur de saisir deux nombres entiers. Ensuite, il utilise une variable temporaire tmp pour échanger les valeurs de n1 et n2, et enfin affiche les valeurs échangées. Voici l’organigramme de cet algorithme:

 
 

4. Écrire un algorithme pour calculer la factorielle d’un nombre entier saisi par l’utilisateur. (Remarque: le factoriel de 5, qui s’écrit 5! = 5 × 4 × 3 × 2 × 1).

Exemple de sortie:

Saisir un nombre : 5
Le factoriel de 5 est: 120
Algorithme Factoriel
Variables nbr,f,i: entiers 
Début
   Ecrire("Saisir un nombre")
   Lire (nbr)
   f ← 1 
   Pour i de 1 jusqu'à nbr faire 
       f ← f * i   
   FinPour 
   Ecrire("Le factoriel de ",nbr," est: " f)
Fin

Nous commençons par déclarer les variables que nous utiliserons dans l’algorithme. Nous avons besoin de trois variables : nbr, f et i. Nous les déclarons comme des entiers en utilisant le symbole deux points (:).

Ensuite, nous demandons à l’utilisateur d’entrer la valeur de nbr à l’aide des instructions Ecrire et Lire. Nous écrivons un message invitant l’utilisateur à saisir un entier nbr, puis nous lisons la valeur saisie par l’utilisateur et la stockons dans la variable nbr.

Ensuite, nous initialisons la variable f à 1. Cette variable stockera la factorielle de nbr au fur et à mesure que nous la calculerons dans la boucle. Nous utilisons le signe (←) pour attribuer une valeur à une variable.

Ensuite, nous utilisons une boucle pour itérer de 1 à nbr et multiplier f par i à chaque itération. La boucle a une valeur de départ, une valeur d’arrivée et une valeur d’incrémentation. Dans ce cas, nous commençons à 1, nous terminons à nbr et nous incrémentons de 1. Nous utilisons le mot-clé ‘POUR’ pour commencer la boucle et le mot-clé ‘FinPour’ pour la terminer. Nous utilisons également l’indentation pour montrer le corps de la boucle. À chaque itération, nous mettons à jour la valeur de f en la multipliant par i à l’aide du symbole de l’astérisque (*). De cette façon, nous calculons la factorielle de nbr comme le produit de tous les entiers de 1 à nbr.

Enfin, nous affichons la factorielle de nbr à l’aide de l’instruction Écrire. Nous écrivons un message qui indique la valeur de nbr et sa factorielle séparées par des virgules. Voici l’organigramme de cet algorithme:

 
 

5. Écrire un algorithme permettant d’afficher si un nombre saisi est pair ou impair.

Exemple de sortie:

Entrer un nombre: 8 
Nombre pair
Algorithme  PairImpair
Variables nbr :entier
Début 
  Ecrire("Entrer un nombre:")
  Lire(nbr)
  Si(nbr mod 2 = 0) alors
      Ecrire("Nombre pair")
     SiNon
      Ecrire("Nombre impair")
  FinSi
Fin

Si un nombre est divisible par 2 sans reste, il est pair. Vous pouvez calculer le reste à l’aide de l’opérateur modulo « mod », comme ceci nbr mod 2 = 0. Si un nombre divisé par 2 laisse un reste de 1, le nombre est impair. Vous pouvez le vérifier en utilisant nbr mod 2 = 1. Voici l’organigramme de cet algorithme:

 
 

6. Écrire un algorithme permettant d’afficher le plus grand des 3 nombres saisis au clavier.

Exemple de sortie:

Entrer 1er nombre : 2
Entrer 2éme nombre: 9
Entrer 3éme nombre: 7
Le nombre le plus grand est: 9
Algorithme Max3Nbr
Variables n1,n2,n3,max :entiers
Début
  Ecrire("Entrer 1er nombre :")  
  Lire(n1)
  Ecrire("Entrer 2éme nombre:")  
  Lire(n2)
  Ecrire("Entrer 3éme nombre:")  
  Lire(n3)
   max ← n1  
   Si (n2 >= max) alors
	    max ← n2 
   FinSi
   
   Si(n3 >= max) alors 
      max ← n3 
   FinSi
 Ecrire("Le nombre le plus grand est: ",max)
Fin

Voici l’organigramme de cet algorithme:

 
 

7. A quoi sert l’algorithme suivant?
Variable nbr : entier
Debut
nbr ← 0
Ecrire("Entrez un nombre entre 1 et 5")
TantQue(nbr < 1 ou nbr > 5)
    Lire(nbr)
    Si(nbr < 1 ou nbr > 5) Alors
        Ecrire("Nombre incorrect. Recommencez")
    FinSi
FinTantQue
Fin

L’algorithme demande à l’utilisateur un nombre de 1 à 3 jusqu’à ce que la réponse est correct.

 
 

8. Écrire un algorithme qui calcule la valeur absolue d’un nombre saisi par l’utilisateur.

Exemple de sortie:

Entrer un nombre: -5
La valeur absolue de -5 est 5
Algorithme NbrAbsolue
Variable n :entier
Debut
   Ecrire("Entrer un nombre :") 
   Lire(n)
   Si(n >= 0) alors
     Ecrire("La valeur absolue de ",n," est ",n)
   SiNon 
     Ecrire("La valeur absolue de ",n," est ",-n)
   FinSi
Fin

Voici l’organigramme de cet algorithme:

 
 

9. Écrire un algorithme qui calcule la moyenne de 3 nombres entrés par l’utilisateur.

Exemple de sortie:

Entrer 1er nombre :  5
Entrer 2éme nombre:  7
Entrer 3éme nombre:  3
La moyenne est : 5
Algorithme Moyenne3Nbr
Variables n1,n2,n3,moy:entiers
Début
	Ecrire("Entrer n1:")
	Lire(n1)
	Ecrire("Entrer n2:")
	Lire(n2)
	Ecrire("Entrer n3:")
	Lire(n3)
	moy ← (n1+n2+n3) div 3  
	Ecrire("La moyenne est: ",moy)
Fin

La formule pour trouver la moyenne de nombres ou de valeurs donnés est très simple. Il suffit d’additionner tous les nombres et de diviser le résultat par le nombre de valeurs données. La formule pour calculer la moyenne est donc la suivante:

Moyenne = Total/Nombre

Ici, nous utilisons 3 nombres, donc pour calculer la moyenne, nous devons additionner les 3 nombres et les diviser par 3.

 
 

10. Écrire un algorithme qui affiche 10 fois « Hello ». En utilisant la boucle Tant que.

Exemple de sortie:

Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Algorithme Hello10Fois 
Variable n: entier 
Début
   n ← 1 
   TantQue(n <= 10) faire 
      Ecrire("Hello")
      n ← n + 1      
   FinTantQue
Fin

Dans cet algorithme, la boucle TantQue continuera à s'exécuter tant que la variable n est inférieure ou égale à 10. À l'intérieur de la boucle, le texte est affiché, puis la variable n est incrémentée de 1 jusqu'à ce que la condition ne soit plus remplie. Voici l'organigramme de cet algorithme:

 
 

11. Ecrivez un algorithme qui calcule la somme de 1 à 10. En utilisant la boucle TantQue.

Indication:

1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55

Exemple de sortie:

La somme de 1 à 10 est 55
Algorithme Somme1A10
Variable i,sum: entiers 
Début
  i  ← 1
  sum  ← 0 
  TantQue(i <= 10) faire 
      sum ← sum + i
      i ← i + 1     
  FinTantQue
  Ecrire("La somme de 1 à 10 est: ",sum)
Fin

Dans la boucle TantQue ci-dessus, la variable i est initialisée à 1 et la boucle se poursuit tant que i est inférieur ou égal à 10. À chaque itération de la boucle, la variable sum s'additionne à la valeur de i.

Enfin, la boucle incrémente la valeur de i de 1, et le processus se répète jusqu'à ce que la condition i <= 10 ne soit plus vraie. Dans ce cas on affiche le message "La somme de 1 à 10 est: sum".

 
 

12. Ecrivez un algorithme qui calcule la somme de 1 à N, où N est saisi par l'utilisateur. En utilisant la boucle TantQue.

Indication:

1 + 2 + 3 + 4 + 5 + 6 + 7 = 28

Exemple de sortie:

Entrer un nombre: 7
La somme de 1 à 10 est 28
Algorithme SommeDe1AN
Variables i,sum,n: entiers 
Debut
  i ← 1     
  sum ← 0 
  Ecrire("Entrer un nombre:")
  Lire(n)
  TantQue(i <= n) faire 
	    sum ← sum + i
	    i ← i + 1     
  FinTantQue
  Ecrire("La somme de 1 à n est:",sum)
Fin

La boucle TantQue est itérée n fois. À chaque itération, la valeur de i est ajoutée à la somme sum et i est incrémenté de 1.

 
 

13. Ecrivez un algorithme qui affiche "Hello" 10 fois. En utilisant la boucle POUR.

Exemple de sortie:

Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Algorithme Hello10Fois
Variable n: entier 
Début
  Pour n de 1 jusqu'à 10 faire 
    Ecrire("Hello")
  FinPour 
Fin

Dans cet algorithme, la boucle POUR continuera à s'exécuter tant que la variable n est inférieure ou égale à 10. À l'intérieur de la boucle, le texte est affiché, puis la variable n est incrémentée de 1 jusqu'à ce que la condition ne soit plus remplie. Voici l'organigramme de cet algorithme:

 
 

14. Ecrivez un algorithme qui calcule la somme de 1 à 10. En utilisant la boucle POUR.

Indication:

1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55

Exemple de sortie:

La somme de 1 à 10 est 55
Algorithme Somme1A10
Variable i,sum: entiers 
Début
   sum ← 0 
   Pour i de 1 jusqu'à 10 faire 
        sum ← sum + i   
   FinPour 
   Ecrire("La somme de 1 à 10 est:", sum)
Fin

Dans la boucle POUR ci-dessus, la variable i est initialisée à 1 et la boucle se poursuit tant que i est inférieur ou égal à 10. À chaque itération de la boucle, la variable sum s'additionne à la valeur de i.

 
 

15. Ecrivez un algorithme qui calcule la somme de 1 à N, où N est saisi par l'utilisateur. En utilisant la boucle POUR.

Indication:

1 + 2 + 3 + 4 + 5 + 6 + 7 = 28

Exemple de sortie:

Entrer un nombre: 7
La somme de 1 à 10 est 28
Algorithme SommeDe1AN
Variables i,sum,n: entiers 
Début
   sum ← 0 
   Ecrire("Entrer un nombre:")
   Lire(n)
   Pour i de 1 jusqu'à n faire 
       sum ← sum + i   
   FinPour 
   Ecrire("La somme de 1 à n est:",sum)
Fin

La boucle POUR est itérée n fois. À chaque itération, la valeur de i est ajoutée à la somme sum et i est incrémenté de 1.

 
 

16. Écrire un algorithme qui affiche la table de multiplication de 3. En utilisant la boucle For.

Exemple de sortie:

3 x 0 = 0
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
3 x 4 = 12
3 x 5 = 15
3 x 6 = 18
3 x 7 = 21
3 x 8 = 24
3 x 9 = 27
3 x 10= 30  
Algorithme TableMultiplication
Variable i:entier
Début
   Pour i de 0 jusqu'à 10 faire 
      Ecrire("3 x ",i," = ",i*3)
   FinPour 
Fin

Nous utilisons la boucle POUR pour afficher la table de multiplication de 3. La boucle s'exécute de i = 1 à i = 10. À chaque itération de la boucle, i * 3 est affiché.

 
 

17. Écrire un algorithme qui affiche la table de multiplication d'un entier saisi par l'utilisateur, en utilisant la boucle POUR.

Exemple de sortie:

Entrer un nombre: 7
7 x 0 = 0
7 x 1 = 7
7 x 2 = 14
7 x 3 = 21
7 x 4 = 28
7 x 5 = 35
7 x 6 = 42
7 x 7 = 49
7 x 8 = 56
7 x 9 = 63
7 x 10= 70
Algorithme TableMultiplicationDeN
Variables i,n :entiers
Début
   Ecrire("Donner un nombre:")
   Lire(n)
   Pour i de 0 jusqu'à 10 faire 
      Ecrire(n," x ",i," = ",i*n)
   FinPour 
Fin

Nous utilisons la boucle POUR pour afficher la table de multiplication de n. La boucle s'exécute de i = 1 à i = 10. À chaque itération de la boucle, i * n est affiché.

 
 

18. Ecrivez un algorithme qui affiche "Hello" 10 fois. En utilisant la boucle Répéter Jusqu’à.

Exemple de sortie:

Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Algorithme Hello10Fois 
Variables i: entier 
Début
   i ← 1 
   Répéter
	  Ecrire("Hello")
	  i ← i+1    
   Jusqu'à i>10 
Fin

La principale différence entre la boucle "TantQue" et "Répéter Jusqu’à" est que dans la boucle Répéter Jusqu’à", la boucle s'exécute une fois avant même de vérifier la condition, alors que dans une boucle "TantQue", la boucle s'exécute si la condition est vraie.

 
 

19. Ecrivez un algorithme qui calcule la somme de 1 à 10. En utilisant la boucle Répéter Jusqu’à.

Indication:

1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55

Exemple de sortie:

La somme de 1 à 10 est 55
Algorithme Somme1A10
Variables i,sum: entiers 
Début
    sum ← 0    
	i ← 1
    Répéter 
       sum ← sum + i 
       i ← i+1	  
    Jusqu'à  i > 10 
   Ecrire("La somme de 1 à 10 est:" sum)
Fin
 
 

20. Écrire un algorithme qui affiche la table de multiplication de 2. En utilisant la boucle Répéter Jusqu’à.

Exemple de sortie:

2 x 0 = 0
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10
2 x 6 = 12
2 x 7 = 14
2 x 8 = 16
2 x 9 = 18
2 x 10= 20  
Algorithme TableMultiplication
Variable i:entier
Début
   i ← 0
   Répéter  
      Ecrire("2 x ",i," = ",i*2)
      i ← i+1
   Jusqu'à i > 10 
Fin
 
 

21. Écrire un algorithme permettant de saisir 10 nombres et de les stocker dans un tableau appelé myTab, puis de les afficher.

Exemple de sortie:

6   3   8   1   5   9   4   2   6   0
6   3   8   1   5   9   4   2   6   0
Algorithme AfficherTableau
Variable myTab[10]:reéls 
         i : entier
Début
    Pour i de 1 jusqu❛à 10 faire 
	    lire(myTab[i])
    FinPour 

    Pour i de 1 jusqu'à 10 faire 
	    Ecrire(myTab[i])
    FinPour 
Fin

L'algorithme ci-dessus invite l'utilisateur à saisir 10 entiers dans un tableau nommé myTab, puis affiche les éléments du tableau.

La première boucle POUR demande à l'utilisateur de saisir 10 éléments dans le tableau, et la boucle POUR s'exécute de 1 jusqu'à 10, invitant l'utilisateur à saisir chaque élément à l'aide de lire(), et stockant chaque entrée dans l'index correspondant du tableau myTab[i].

La deuxième boucle POUR affiche ensuite le contenu du tableau, qui parcourt les éléments de myTab et affiche chaque élément à l'aide de Ecrire().

 
 

22. Écrire un algorithme permettant d'entrer 10 notes et d'afficher la moyenne de ces notes.

Exemple de sortie:

6   3   8   1   5   9   4   2   6   0
La moyenne est: 4,4
Algorithme NoteMoyenne 
Variables Notes[10], sum :réels
          i :entier
Début
    sum ← 0
    Pour i de 1 jusqu'à 10 faire 
       Lire(Notes[i])
       sum ← sum + Notes[i]
    FinPour
    Ecrire("La moyenne est:",sum/10)
Fin

L'algorithme demande à l'utilisateur de saisir 10 notes dans le tableau, et la boucle POUR s'exécute de 1 jusqu'à 10, invitant l'utilisateur à saisir chaque élément à l'aide de lire(), et stockant chaque entrée dans l'index correspondant du tableau Notes[i].

Ensuite, à chaque itération de la boucle, la somme de chaque élément saisi est calculée. Une fois la boucle POUR terminée, la moyenne est calculée et affichée à l'écran à l'aide de Ecrire().

 
 

23. Écrire un algorithme permettant la saisi de 10 nombres et l'affichage du maximum de ces nombres.

Exemple de sortie:

Entrer un nombre: 6   
Entrer un nombre: 3   
Entrer un nombre: 8   
Entrer un nombre: 1   
Entrer un nombre: 5   
Entrer un nombre: 7   
Entrer un nombre: 4   
Entrer un nombre: 2   
Entrer un nombre: 6   
Entrer un nombre: 0
Le maximum est: 8
Algorithme myTabMax 
Variables myTab[10],max,i:réels
Début
   Ecrire("Entrer un nombre:")
   Lire(myTab[0])        
   max ← myTab[0] 
   
   Pour i de 1 jusqu'à 10 faire
      Ecrire("Entrer un nombre:")
      Lire(myTab[i])
	    Si (myTab[i] > max) alors
	      max ← myTab[i] 
	    FinSi
   FinPour 
   Ecrire("Le maximum est:",max)
Fin

Dans cet algorithme nous avons créer une variable max et l'initier à myTab[0] pour stocker le maximum dans le tableau.

Itérer sur le tableau

  • Comparer myTab[i] avec max.
  • Si myTab[i] > max, mettre à jour max ← myTab[i].

Une fois l'itération terminée, renvoyer max comme réponse.

 
 

24. Ecrivez un algorithme qui permet d'entrer 10 nombres dans un tableau, et de calculer le nombre d'occurrences d'un élément E dans ce tableau. Où E est entré par l'utilisateur.

Exemple de sortie:

Entrer un nombre: 6   
Entrer un nombre: 3   
Entrer un nombre: 8   
Entrer un nombre: 6   
Entrer un nombre: 5   
Entrer un nombre: 7   
Entrer un nombre: 4   
Entrer un nombre: 6   
Entrer un nombre: 6   
Entrer un nombre: 0
Entrer Le nombre recherché: 6
Nombre d'occurences de 6 est 4
Algorithme NbrOccurences
Variables nbrRech,myTab[10]:réels
          nbrOcc,i:entiers
Début
   nbrOcc ← 0
   Pour i de 1 jusqu❛à 10 faire 
       Ecrire("Entrer un nombre:")
       Lire(myTab[i])
   FinPour 
   
    Ecrire("Entrer Le nombre recherché:")
    Lire(nbrRech)
    
     Pour i de 1 jusqu❛à 10 faire
         Si(myTab[i] = nbrRech) alors
                nbrOcc ← nbrOcc + 1 
         FinSi
     FinPour 
 Ecrire("Nombre d'occurences de ",nbrRech," est ",nbrOcc)
Fin

Pour compter le nombre d'occurrences d'une valeur spécifique dans un tableau, nous pouvons utiliser une simple boucle POUR tout en recherchant notre valeur cible. Si la valeur cible est trouvée, nous incrémentons la variable nbrOcc. Nous procédons de cette façon jusqu'à ce que l'ensemble du tableau soit parcouru.

Approche:

  • Initialiser la variable nbrOcc à zéro.
  • On parcourt le tableau et on vérifie si l'élément courant(myTab[i]) correspond à la valeur cible(nbrRech).
  • Si c'est le cas, nbrOcc est incrémenté de 1.
  • Dans le cas contraire, passer à l'itération suivante.
  • Répétez le processus jusqu'à ce que tous les éléments du tableau aient été vérifiés.
  • Enfin, retourner nbrOcc.
 
 

25. Ecrivez un algorithme pour entrer 10 entiers dans un tableau et trier ce tableau dans un ordre croissant. Affichez ensuite ce tableau après l'avoir trié.

Exemple de sortie:

Entrer un nombre: 8   
Entrer un nombre: 1  
Entrer un nombre: 5  
Entrer un nombre: 6   
Entrer un nombre: 3  
Entrer un nombre: 2   
Entrer un nombre: 4   
Entrer un nombre: 7   
Entrer un nombre: 9   
Entrer un nombre: 0
Tableau trié: 0    1    2    3    4    5    6    7    8    9
Algorithme TrierTab
Variables i,j,tmp,myTab[10]:entiers
Début
  Pour i de 1 jusqu❛à 10 faire
    Ecrire("Entrer un nombre:")
    Lire(myTab[i])
  FinPour 
   
  Pour i de 1 jusqu❛à 9 faire 
     Pour j de i+1 jusqu'à 10 faire
       Si(myTab[j] < myTab[i]) alors
           tmp ← myTab[i] 
           myTab[i] ← myTab[j] 
           myTab[j] ← tmp 
        FinSi
     FinPour 
   FinPour
   
    Pour i de 1 jusqu❛à 10 faire  
     Ecrire(myTab[i])
   FinPour	
Fin

L'algorithme ci-dessus invite l'utilisateur à saisir 10 nombres dans un tableau nommé myTab, puis affiche les éléments triés du tableau.

La première boucle POUR demande à l'utilisateur de saisir 10 éléments dans le tableau, et la boucle POUR s'exécute de 1 jusqu'à 10, invitant l'utilisateur à saisir chaque élément à l'aide de lire(), et stockant chaque entrée dans l'index correspondant du tableau myTab[i].

La deuxième boucle POUR parcourt le tableau myTab et permute les éléments du tableau(permute deux éléments aux positions i et j) en utilisant une variable temporaire pour contenir l'une des valeurs pendant la permutation. L'algorithme parcourt le tableau répétitivement, compare chaque paire d'éléments adjacents et les échange si nécessaire. Après le premier passage, l'élément le plus grand est placé à la fin du tableau.

  1. Dans l'algorithme de tri à bulle, nous comparons les deux premiers éléments d'un tableau et les permutons si nécessaire.
  2. Si nous voulons trier les éléments d'un tableau dans l'ordre croissant et si le premier élément est plus grand que le second, nous devons permuter les éléments.
  3. Si le premier élément est plus petit que le second, il n'est pas nécessaire de permuter les éléments. Ce processus se poursuit jusqu'à ce que le dernier et l'avant-dernier élément soient comparés et permutés.

La troisième boucle POUR affiche ensuite le tableau trié, qui parcourt les éléments de myTab et affiche chaque élément à l'aide de Ecrire().

 
 

26. Écrire un algorithme pour afficher les nombres pairs entre 0 et N, où N est saisi par l'utilisateur.

Exemple de sortie:

Entrer un nombre :  9
0  2  4  6  8 
Algorithme NbrPaire
Variables i,N : entiers
Début    
 Ecrire("Entrer un nombre: ")
 lire(N)
  Pour i de 0 jusqu❛à N faire
      Si(i mod 2 = 0) alors
      Ecrire(i)
  FinPour
Fin

Description pas à pas de la logique permettant d'afficher tous les nombres pairs compris entre 1 et n à en utilisant l'instruction "Si":

  • L'utilisateur doit saisir la limite supérieure des nombres pairs. Stockez-la dans la variable N.
  • Exécutez la boucle "POUR" à partir de 1, jusqu'à N.
  • À l'intérieur du corps de la boucle, vérifiez la condition pair/impair. Si le nombre actuel i est divisible par 2, alors i est pair. Autrement dit, Si(i mod 2 = 0), la valeur de i est affichée.
 
 

27. Ecrivez un algorithme qui calcule la somme des nombres impairs compris entre 1 et un nombre entier N saisi par l'utilisateur. Exemple N=10 Somme=1+3+5+7+9=25

Exemple de sortie:

Entrer un nombre :  10
25
Algorithme SumNbrImpaires
Variables sum,i,N: entiers
Début      
   sum ← 0 
   Ecrire("Entrer un nombre:")
   Lire(N)
   Pour i de 1 jusqu❛à N faire 
      Si (i mod 2 ≠ 0) alors
          sum ← sum + i 
      FinSi 
   FinPour
  Ecrire(sum)
Fin

Dans cet algorithme:

  • L'utilisateur doit saisir la limite supérieure des nombres impairs. Stockez-la dans la variable N.
  • Exécutez la boucle "POUR" à partir de 1, jusqu'à N.
  • À l'intérieur du corps de la boucle, vérifiez la condition pair/impair. Si le nombre actuel i n'est pas divisible par 2, alors i est impair. Autrement dit, Si(i mod 2 ≠ 0), nous ajoutons le nombre actuel i à la variable sum.
  • Enfin nous affichons la somme des nombres impairs.
 
 

28. Écrire un algorithme permettant de calculer le plus grand commun diviseur (PGCD) entre deux nombres entiers entrés par l'utilisateur.

Exemple:

n1=18 et n2=45
PGCD(18, 45) = 9

Exemple de sortie:

Entrer deux nombres: 18  45
Le PGCD est : 9
Algorithme TrouverPGCD
Variables n1,n2,i,pgcd: entiers
Début   
    Ecrire("Entrer deux nombres:")
    Lire(n1,n2)
    i ← 1
    TantQue(i<=n1 et i<=n2) faire
       Si(n1 mod i=0 et n2 mod i=0) alors
          pgcd ← i 
       FinSi
       i ← i + 1
    FinTantQue
    Ecrire("Le PGCD est:",pgcd)      
Fin

Dans ce programme, deux nombres entiers entrés par l'utilisateur sont stockés dans les variables n1 et n2. Ensuite, la boucle TantQue est itérée jusqu'à ce que i soit inférieur à n1 et n2.

A chaque itération, si n1 et n2 sont exactement divisibles par i, la valeur de i est affectée à la variable "pgcd".

Lorsque la boucle TantQue est terminée, le plus grand diviseur commun de deux nombres est stocké dans la variable "pgcd".

 
 

29. Écrire un algorithme qui affiche un triangle d'entiers, en fonction d'un entier N saisi par l'utilisateur.

Exemple de sortie:

Donner un nombre: 7
1
22
333
4444
55555
666666
7777777
Algorithme NTriangle
Variables N,i,j: entiers  
Début     
 Ecrire("Donner un nombre: ")
 Lire(N)

 Pour i de 1 jusqu❛à N faire
    Pour j de 1 jusqu❛à i faire
      Ecrire(i)
    FinPour
   Ecrire("\n")
 FinPour
Fin

Le programme invite l'utilisateur à saisir un nombre à l'aide de la fonction Ecrire() et stocke la valeur dans la variable "N" à l'aide de la fonction Lire(). La boucle POUR est ensuite utilisée pour exécuter le code à l'intérieur de la boucle le nombre de fois spécifié par l'utilisateur. La boucle POUR commence avec "i" initialisé à 1, et la boucle continue jusqu'à ce que "i" soit inférieur ou égal à "N".

La deuxième boucle POUR est imbriquée dans la première boucle POUR et est utilisée pour exécuter de manière répétée le code à l'intérieur de la boucle pendant le nombre de fois spécifié par l'utilisateur. La boucle POUR commence avec "j" initialisé à 1, et la boucle continue jusqu'à ce que "j" soit inférieur ou égal à "i".

La fonction Ecrire() à l'intérieur de la boucle imbriquée est utilisée pour afficher le nombre actuelle (i) à l'écran à chaque fois que la boucle est exécutée. Les valeurs de "i" et "j" sont incrémentées de 1 à chaque itération des boucles, de sorte que les boucles se terminent finalement lorsque "i" et "j" atteignent la valeur de "N".

 
 

30. Ecrire un algorithme qui compte le nombre de chiffres dans un nombre saisi par l'utilisateur.

Exemple de sortie:

Donner un nombre: 9876
Le nombre de chiffres est 4
Algorithme CompterChiffres
Variables Nbr,i: entiers  
Début        
  Ecrire("Donner un nombre: ")
  Lire(Nbr)
  i ← 1 
  TantQue(Nbr div 10 ≠ 0) faire
    Nbr ← Nbr div 10   
    i ← i + 1
  FinTantQue
  
  Ecrire("Le nombre de chiffres est",i)      
Fin

L'algorithme divise le nombre saisi par l'utilisateur par 10 dans la boucle TantQue jusqu'à ce que le résultat atteigne zéro. Le nombre d'itérations correspondra au nombre de chiffres.

L'entier saisi par l'utilisateur est stocké dans la variable Nbr. Ensuite, la boucle TantQue est itérée jusqu'à ce que la condition (Nbr div 10 ≠ 0) soit évaluée à 0 (False).

  • Après la première itération, la valeur de Nbr est de 987 et le compteur est incrémenté à 1.
  • Après la deuxième itération, la valeur de Nbr sera de 98 et le compteur sera incrémenté à 2.
  • Après la troisième itération, la valeur de Nbr sera de 9 et le compteur sera incrémenté à 3.
  • Après la quatrième itération, la valeur de Nbr sera 0 et le compteur sera incrémenté à 4.
  • La condition de la boucle est alors évaluée à false et la boucle se termine.
 
 

La suite des exercices (30-100) sera publié ici le 10/04/2024.

 

Laisser un commentaire

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