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

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.

 
 

Veuillez voir les exercices de 1 à 30 et 30 à 40.

 

41. Un magasin offre à ses clients 25% de réduction sur les montants d’achat supérieurs à 500 €. Ecrivez un algorithme qui permet d’entrer le prix total hors TVA et de calculer le montant TTC en tenant compte de la remise et du fait que la TVA = 10%.

Exemple de sortie:

Entrer le montant HT: 900
Le montant TTC est: 742.5
Algorithme CalculerTTC
Variables Prix_TTC,Prix_HT: réels
Début
   Ecrire("Entrer le montant HT:")
   Lire(Prix_HT)
   
   Prix_TTC ← Prix_HT + Prix_HT*0.1 
   
    Si(Prix_TTC > 500) alors
        Prix_TTC ← Prix_TTC - Prix_TTC*0.25
        Ecrire("Le montant TTC est:",Prix_TTC)
      SiNon 
        Ecrire("Le montant TTC est:",Prix_TTC)
    FinSi
Fin
 
 

42. Ecrire un algorithme qui demande à l’utilisateur deux nombres n1 et n2 et lui indique ensuite si le produit de ces deux nombres est positif ou négatif. On prévoit dans le programme le cas où le produit peut être nul.

Exemple de sortie:

Entrer le 1er nombre:  -1.5
Entrer le 2éme nombre:  3
Le produit est négatif
-----------------------------
Entrer le 1er nombre:   1
Entrer le 2éme nombre:  3
Le produit est positif
-----------------------------
Entrer le 1er nombre:   0
Entrer le 2éme nombre:  3
Le produit est nul
Algorithme ProduitNbr
Variables n1,n2:réels
Début
  Ecrire("Entrer le 1er nombre:") 
  Lire(n1)
  Ecrire("Entrer le 2éme nombre:") 
  Lire(n2)
  
  Si(n1 == 0 ou n2 == 0) alors
      Ecrire("Le produit est nul")
  FinSi

  Si(n1*n2 < 0) alors
      Ecrire("Le produit est négatif")
  FinSi

  Si(n1*n2 > 0) alors  
      Ecrire("Le produit est positif")
  FinSi
Fin
 
 

43. Écrire un algorithme qui permette d’ajouter un commentaire sur le score saisi au clavier (si le score est supérieur à 10 alors il affiche « GOOD! » sinon « NOT GOOD! » (NB: le score est compris entre 0 et 20!).

Exemple de sortie:

Entrer le score: 15.5
GOOD!
------------------
Entrer le score: 5
NOT GOOD!
------------------
Entrer le score: -5
Score invalide!
Algorithme ValidateScore
Variables score :réel
Début
    Ecrire("Entrer le score: ")  
	Lire(score)

    Si(score < 0 ou score > 20) alors
      Ecrire("Score invalide!")
	FinSi
    Si(score >= 0 et score < 10) alors
      Ecrire("NOT GOOD!")
	FinSi
    Si(score >= 10 et score <= 20) alors
      Ecrire("GOOD!")
Fin
 
 

44. Le service de photocopie de votre université facture 0,50 € pour les 10 premières photocopies, 0,45 € pour les 20 suivantes et 0,30 € au-delà de 30 photocopies. Ecrivez un algorithme qui demande à l'utilisateur le nombre de photocopies réalisées et affiche la facture correspondante.

Exemple de sortie:

Entrez le nombre de papies: 25
Le prix total est: 11.25 €
Algorithme ServicePhotocopie
Variables N: entier
          prix: réel
Début
 Ecrire("Entrer le nombre de papies:")
 Lire(N)
   Si(N <= 20) alors 
     prix ← N * 0.50
   FinSi
   Si(N>20 et N<=30) alors 
      prix ← N * 0.45
   FinSi
   Si(N > 30) alors 
     prix ← N * 0.30
   FinSi
   
  Ecrire("Le prix total est: ",prix," €")   
Fin
 
 

45. Ecrivez un algorithme qui teste l'égalité de deux tableaux de nombres entiers (tailles 5). Le programme affiche TRUE si les éléments des deux tableaux correspondent, sinon il affiche FALSE.

Exemple de sortie:

1	2	3	4	5
1	2	3	4	5
TRUE

10	20	30	40	50
20	30	40	50	60
FALSE
Algorithme Comparer2Tableaux
Variables Tab1[5],Tab2[5],i,not_equal: entiers  
Début
  not_equal ← 0
  Pour i de 1 à 5 faire
    Lire(Tab1[i])
  FinPour
  Pour i de 1 à 5 faire
    Lire(Tab2[i])
  FinPour
  Pour i de 1 à 5 faire
    Si(Tab1[i] ≠ Tab2[i]) alors
       not_equal ← 1 
    FinSi
  FinPour

  Si(not_equal = 0) alors
     Ecrire("TRUE")
  SiNon
     Ecrire ("FALSE")
  FinSi 
Fin
 
 

46. Écrire un algorithme qui permet la saisie de 5 nombres et qui calcule la différence entre la somme des nombres pairs et la somme des nombres impairs.

Par exemple : 3 5 2 4 6 => (2+4+6) - (3+5) = 4

Exemple de sortie:

Entrer un nombre: 3
Entrer un nombre: 5
Entrer un nombre: 2
Entrer un nombre: 4
Entrer un nombre: 6
La différence égale à 4
Algorithme CalcDifférence
Variables myTab[5],i,sum: entiers  
Début 
   sum ← 0
   Pour i de 1 à 5 faire
      Ecrire("Entrer un nombre:") 
      Lire(myTab[i])
      Si(myTab[i] mod 2 = 0) alors
         sum ← sum + myTab[i]
      SiNon
         sum ← sum - myTab[i]
      FinSi
   FinPour

   Ecrire("La différence égale à ",sum)
Fin
 
 

47. Écrire un algorithme qui permet à l'utilisateur d'entrer une série de nombres se terminant par 0, et qui affiche à la fin le nombre d'occurrences du nombre 3.

Exemple de sortie:

2	8	3	1	3	3	6	3	0
3 existe 4 fois
Algorithme OccurenceNbr
Variables  i,Nbr:entiers  
Début  
   i ← 0
   Répéter 
     Lire(Nbr)
     Si(Nbr = 3) alors 
        i ← i + 1
     FinSi		   
  Jusqu❛à(Nbr = 0)
  
  Si(i ≠ 0) alors
     Ecrire(3," existe ",i," fois")
    SiNon    
     Ecrire(3," n'existe pas")
  FinSi    
Fin

L'algorithme ci-dessus, invite l'utilisateur à saisir des nombres entiers jusqu'à ce qu'il entre 0. Le code à l'intérieur de la boucle Répéter Jusqu'à sera exécuté au moins une fois avant de vérifier la condition de la boucle. La boucle se répète tant que l'utilisateur n'entre pas 0. On vérifie si le nombre saisi est égale à 3. Si c'est le cas on incrémente le compteur i. Après on vérifie Si(i ≠ 0) alors il existe un nombre d’occurrence du nombre spécifié sinon il n'existe pas.

 
 

48. Écrire un algorithme pour afficher les mois en lettres en fonction du nombre saisi par l'utilisateur.

Exemple de sortie:

Entrer le numéro du mois: 1
Janvier

Entrer le numéro du mois: 3
Mars

Entrer le numéro du mois: 12
Décembre
Algorithme MoisEnLettre
Variables N:entier
Début
 Ecrire("Entrer le numéro du mois:")
 Lire(N)
 Selon N faire
	1: Ecrire("Janvier")
	2: Ecrire("Février")
	3: Ecrire("Mars")
	4: Ecrire("Avril")
	5: Ecrire("Mai")
	6: Ecrire("Juin")
	7: Ecrire("Juille")
	8: Ecrire("Août")
	9: Ecrire("Septembre")
	10: Ecrire("Octobre")
	11: Ecrire("Novembre")
	12: Ecrire("Décembre")
 Sinon
    Ecrire("Aucun mois ne correspondant à N")
 FinSelon
Fin

L'instruction Selon est une instruction de contrôle de flux dans laquelle nous pouvons définir une variable changeante et exécuter ensuite un code différent en fonction de la valeur de la variable changeante. C'est une alternative à Si SiNon.

 
 

49. Écrire un algorithme qui calcule les nombres de Fibonacci jusqu'à 50.

Exemple de sortie:

Fibonacci jusqu'à 50: 1  1  2  3  5  8  13  21  34
Algorithme Fibonacci
Variables sum,f1,f2:entier
Début
   sum ← 0
   f1  ← 1
   f2  ← 1
   Pour i de 1 à 50 faire
      sum ← f1 + f2
      f2 ← f1
      f1 ← sum
      Ecrire(sum)
   FinPour
Fin

La série de Fibonacci est une suite de nombres où chaque nombre est la somme des deux nombres précédents.

 
 

50. Écrire un algorithme qui calculera une somme courante. L'utilisateur saisira des nombres qui seront ajoutés à la somme et, lorsqu'un nombre négatif sera rencontré, arrêtera d'ajouter des nombres et écrira le résultat final.

Exemple de sortie:

1 2 3 4 -1
La somme est 10
Algorithme SommeNbr
Variables  Nbr,sum:entiers  
Début  
   sum ← 0
   Répéter 
     Lire(Nbr)
     sum ← x + sum      
  Jusqu'à(Nbr >= 0)
  
  Ecrire("La somme est ",sum)   
Fin
 

Laisser un commentaire

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