EXERCICES CORRIGÉS EN ALGORITHMIQUE : INSTRUCTIONS RÉPÉTITIVES - LES BOUCLES
Cliquer au dessous pour le téléchargement
Exercice 1 :
Ecrire un algorithme permettant de lire une suite de nombres réels sur le clavier. Le dernier élément à lire est un zéro.
L’algorithme doit afficher le plus petit élément de la suite ainsi que la somme des éléments lus.
Correction exercice 1 :
Algorithme lire_une_suite;
Var
a,s : réels ;
Debut
Repeter
Ecrire(‘entrer un nombre: ‘) ;
Lire(a) ;
S<-- s+a ;
Jusqu'à (a=0)
Ecrire(‘la somme des nombres est : ‘,s) ;
fin
Exercice 2 :
Ecrire un algorithme qui lit les noms des athlètes désirant participer à un marathon et s’arrête lorsqu’il rencontre deux noms consécutifs identiques.
L’algorithme doit afficher , à la fin , le nombre de participants.
Correction exercice 2 :
Algorithme lire_une_suite;
Var
Nom1,nom2 : chaine de 30 caractères ;
Compteur i :entier ;
Debut
Ecrire(‘entrer un nom d’athlète : ‘) ;
Lire(nom1) ;
Ecrire(‘entrer un nom d’athlète : ‘) ;
Lire (nom2) ;
i <-- 2 ;
Tantque(nom1 <> nom2)
Nom1 <-- nom2 ;
Ecrire(‘entrer un nom d’athlète : ‘) ;
Lire(nom2) ;
i<-- i+1;
Fintantque
Ecrire(‘le nombre des participants est : ‘,i) ;
fin
Exercice 3 :
Dans un cinéma , on désire calculer la moyenne d’âges de personnes s’intéressant à voir un film particulier.
Pour finir, l’utilisateur doit répondre par ‘N’ à la question posée par l’algorithme :
‘’ Encore une autre personne (O/N) ? ’’
Et on doit afficher la moyenne d’âges des personnes à l’ecran.
Correction exercice 3 :
Algorithme moyenne_age;
Var
i ,age,som :entier ;
Debut
i <-- 0 ;
age <-- 0 ;
Repeter
Ecrire(‘ entrer l’age du personne ’) ;
Lire(‘age’ ) ;
i<-- i+1 ;
Som <-- som+ age ;
Ecrire(‘Encore une autre personne (O/N) ?’)
Lire(rep) ;
Jusqu'à (rep=’N’)
Ecrire(‘la moyenne d’âges des personnes est : ‘,som/i) ;
fin
Exercice 4 :
Ecrire un algorithme permettant de calculer la factorielle d’un nombre entier positif N.
N ! = 1*2*3*……..*N
Correction exercice 4 :
Algorithme factorielle;
Var
i ,N,fact:entier ;
Debut
fact<-- 1 ;
pour i=1 à N faire
fact<-- fact*i ;
Finpour i
Ecrire(‘ la factorielle de ’ ,N,’ est : ‘,fact ) ;
fin
Exercice 5 :
Pour avoir une idée sur le niveau des éleves d’une classe, on a décidé de calculer la moyenne de la classe à partir des moyennes générales de tous les élèves qui sont au nombre de 30.
Moy =
Ecrire un algorithme de résolution.
Correction exercice 5 :
Algorithme moyenne_classe;
Var
i :entier ;
NT ,som: réels
const
nb=30 ;
Debut
Som <-- 0 ;
pour i=1 à N faire
Ecrire(‘ entrer la note N°’,i,’ :’) ;
Lire(NT) ;
Som<-- som+NT ;
Finpour i
Ecrire(‘ la moyenne de la classe est : ‘,som/nb ) ;
fin
Exercice 6 :
Ecrire un algorithme qui permet de retrouver le maximum, le minimum ainsi que la somme d’une liste de nombres positifs saisis par l’utilisateur. La fin de la liste est indiquée par un nombre négatif. La longueur de la liste n’est pas limitée.
Exemple : si la liste des éléments est : 7 3 20 15 2 6 5 -1
Le maximum est 20 , le minimum est 2 .
Correction exercice 6 :
Algorithme moyenne_age;
Var
i ,n,som :entier ;
Debut
Ecrire(‘ entrer un nombre ’) ;
Lire(‘n’ ) ;
max<-- n ;
min <-- n ;
som <-- n ;
Tantque n>0 faire
Ecrire(‘ entrer un nombre’) ;
Lire(‘n’ ) ;
Si min>n alors
Min <-- n ;
Finsi
Si max<n alors
Max <-- n ;
Finsi
fintantque
Ecrire(‘Le maximum est ‘,max ,’ le minimum est ‘,min) ;
fin
Exercice 1 :
Ecrire un algorithme permettant de lire une suite de nombres réels sur le clavier. Le dernier élément à lire est un zéro.
L’algorithme doit afficher le plus petit élément de la suite ainsi que la somme des éléments lus.
Correction exercice 1 :
Algorithme lire_une_suite;
Var
a,s : réels ;
Debut
Repeter
Ecrire(‘entrer un nombre: ‘) ;
Lire(a) ;
S<-- s+a ;
Jusqu'à (a=0)
Ecrire(‘la somme des nombres est : ‘,s) ;
fin
Exercice 2 :
Ecrire un algorithme qui lit les noms des athlètes désirant participer à un marathon et s’arrête lorsqu’il rencontre deux noms consécutifs identiques.
L’algorithme doit afficher , à la fin , le nombre de participants.
Correction exercice 2 :
Algorithme lire_une_suite;
Var
Nom1,nom2 : chaine de 30 caractères ;
Compteur i :entier ;
Debut
Ecrire(‘entrer un nom d’athlète : ‘) ;
Lire(nom1) ;
Ecrire(‘entrer un nom d’athlète : ‘) ;
Lire (nom2) ;
i <-- 2 ;
Tantque(nom1 <> nom2)
Nom1 <-- nom2 ;
Ecrire(‘entrer un nom d’athlète : ‘) ;
Lire(nom2) ;
i<-- i+1;
Fintantque
Ecrire(‘le nombre des participants est : ‘,i) ;
fin
Exercice 3 :
Dans un cinéma , on désire calculer la moyenne d’âges de personnes s’intéressant à voir un film particulier.
Pour finir, l’utilisateur doit répondre par ‘N’ à la question posée par l’algorithme :
‘’ Encore une autre personne (O/N) ? ’’
Et on doit afficher la moyenne d’âges des personnes à l’ecran.
Correction exercice 3 :
Algorithme moyenne_age;
Var
i ,age,som :entier ;
Debut
i <-- 0 ;
age <-- 0 ;
Repeter
Ecrire(‘ entrer l’age du personne ’) ;
Lire(‘age’ ) ;
i<-- i+1 ;
Som <-- som+ age ;
Ecrire(‘Encore une autre personne (O/N) ?’)
Lire(rep) ;
Jusqu'à (rep=’N’)
Ecrire(‘la moyenne d’âges des personnes est : ‘,som/i) ;
fin
Exercice 4 :
Ecrire un algorithme permettant de calculer la factorielle d’un nombre entier positif N.
N ! = 1*2*3*……..*N
Correction exercice 4 :
Algorithme factorielle;
Var
i ,N,fact:entier ;
Debut
fact<-- 1 ;
pour i=1 à N faire
fact<-- fact*i ;
Finpour i
Ecrire(‘ la factorielle de ’ ,N,’ est : ‘,fact ) ;
fin
Exercice 5 :
Pour avoir une idée sur le niveau des éleves d’une classe, on a décidé de calculer la moyenne de la classe à partir des moyennes générales de tous les élèves qui sont au nombre de 30.
Moy =
Ecrire un algorithme de résolution.
Correction exercice 5 :
Algorithme moyenne_classe;
Var
i :entier ;
NT ,som: réels
const
nb=30 ;
Debut
Som <-- 0 ;
pour i=1 à N faire
Ecrire(‘ entrer la note N°’,i,’ :’) ;
Lire(NT) ;
Som<-- som+NT ;
Finpour i
Ecrire(‘ la moyenne de la classe est : ‘,som/nb ) ;
fin
Exercice 6 :
Ecrire un algorithme qui permet de retrouver le maximum, le minimum ainsi que la somme d’une liste de nombres positifs saisis par l’utilisateur. La fin de la liste est indiquée par un nombre négatif. La longueur de la liste n’est pas limitée.
Exemple : si la liste des éléments est : 7 3 20 15 2 6 5 -1
Le maximum est 20 , le minimum est 2 .
Correction exercice 6 :
Algorithme moyenne_age;
Var
i ,n,som :entier ;
Debut
Ecrire(‘ entrer un nombre ’) ;
Lire(‘n’ ) ;
max<-- n ;
min <-- n ;
som <-- n ;
Tantque n>0 faire
Ecrire(‘ entrer un nombre’) ;
Lire(‘n’ ) ;
Si min>n alors
Min <-- n ;
Finsi
Si max<n alors
Max <-- n ;
Finsi
fintantque
Ecrire(‘Le maximum est ‘,max ,’ le minimum est ‘,min) ;
fin
Ads