Académique Documents
Professionnel Documents
Culture Documents
CENTRE CPAGE-LAAYOUNE-
Algorithmique de base
Correction TD-03: Structures répétitives(Boucles)
Exercice 01 :
1-Écrire un algorithme qui permet de saisir un nombre entier et qui calcule la
somme des entiers pairs jusqu’à ce nombre. Par exemple, si l’on saisit 10, le programme
doit calculer :0+2+4+6+8+10=30
Correction Exo :1-1
Algorithme : Somme_nombres_paires
Variable : N,Som,i: Entier
Début:
Ecrire("saisir un nombre N")
Lire(N)
Som0 //initiation de som à 0
Pour i allant de 1 à N faire
Si N Mod i=0 faire
Som Som + i
Fin Si
Fin Pour
Ecrire("La somme des nombres paires est:",Som)
Fin
Algorithme : Factorielle
Variable : N,Fact,i: Entier
Début:
Ecrire("saisir un nombre N")
Lire(N)
Fact1 //initiation de Fac à 1
i1 //initiation de compteur i à 1
TantQue i<=N faire
Fact Fact * i
ii+1
Fin Tanque
Ecrire("Le factorielle est :",Fact)
Fin
Algorithme : Somme_moyenne
Variable : N,note,i : Entier
Variable : som,moy: Reel
Début:
Ecrire("saisir le nombre de notes")
Lire(N)
som0
Pour i allant de 1 à N faire
Ecrire("saisir la note N° :",i)
Lire(note)
Som som+note
Fin Pour
Moy Som/N
Ecrire("La somme des notes est :",som)
Ecrire("La moyenne des notes est :",moy)
Fin
4-Ecrire un algorithme qui permet d’afficher le maximum parmi dix nombres entiers
saisis au clavier.
Algorithme : Maximum
Variable : Max,N,i : Entier
Début:
Ecrire("saisir le nombre N:1")
Lire(N)
MaxN //Attribuer la valeur N au Max
Pour i allant de 2 à 10 faire
Ecrire("saisir le nombre N° :",i)
Lire(N)
Si N>Max faire
MaxN
Fin Si
Fin Pour
Ecrire("Le Maximum est :",Max)
Fin
Algorithme : Diviseur_N
Variable : N,i : Entier
Début:
Ecrire("saisir le nombre N")
Lire(N)
Pour i allant de 1 à N faire
Si N Mod i=0 faire
Ecrire(i," est diviseur de :",N)
Fin Si
Fin Pour
Fin
Algorithme : Diviseur_N
Variable : N,i : Entier
Début:
Ecrire("saisir le nombre N")
Lire(N)
Pour i allant de 1 à N faire
Si N Mod i=0 faire
Ecrire(i," est diviseur de :",N)
Fin Si
Fin Pour
Fin
Algorithme : Puissance
Variable : Puis,A,B : Entier
Début:
Ecrire("saisir le nombre A")
Lire(A)
Ecrire("saisir la puissance B")
Lire(B)
Puis1 //initiation à 1
Pour i allant de 1 à B faire
PuisPuis * A
Fin Pour
Ecrire("La puissance est :",Puis)
Fin
Algorithme : Nombre_parfait
Variable : Som_d,N,i : Entier
Début:
Ecrire("saisir un nombre N")
Lire(N)
Som_d0
Pour i allant de 1 à N-1 faire
Si N Mod i=0 faire
Som_dSom_d + i
Fin Si
Fin Pour
Si Som_d=N faire
Ecrire(N," est un nombre parfait")
Sinon
Ecrire(N," est un nombre non parfait")
Fin Si
Fin
8-Ecrire un algorithme qui calcule le PGDC (plus grand diviseur commun) de deux
nombres entiers a et b non nuls.
Pgcd(a,b)=pgcd(a-b,b) si a est le plus grand
Pgcd(a,b)=pgcd(a,b-a) si b est le plus grand
Si a=b le pgcd(a,b) est a ou b.
Correction Exo :1-8
Algorithme : PGCD
Variable : A,B : Entier
Début:
Ecrire("saisir la valeur de A")
Lire(A)
Ecrire("saisir la valeur de B")
Lire(B)
TantQue A<>B faire
Si A>B faire
A A-B
Sinon
B B-A
Fin Si
Fin TantQue
Ecrire("Le PGCD est :",A)
Fin
Exercice 02 :
1-Ecrire un algorithme qui demande successivement des nombres à l’utilisateur et
qui calcule le nombre de valeurs saisis. La saisie des nombres s’arrête lorsque l’utilisateur
entre le caractère <n> ou <N>.
Correction Exo :2-1
Algorithme : nombre_saisie
Variable : nb : Entier
Variable : N : Caractère
Début:
Ecrire("saisir un nombre pour Quitter 'n'ou 'N'")
Lire(N)
nb1 //pour compter le nombre de saisie
Tantque N<>'n' ou N<>"N" faire
Ecrire("saisir un nombre pour Quitter 'n'ou 'N'")
Lire(N)
nb nb+1
Fin TantQue
Ecrire("Le nombre des valeurs saisie est :",nb)
Fin
Professeur : ARROU ABDESSELAM Page | 5
LYCEE LISSANE EDDINE IBN KHATIB ANNEE SCOLAIRE 2018/2019
CENTRE CPAGE-LAAYOUNE-
Algorithme : Reponse_convienne
Variable : N : Entier
Début:
Ecrire("saisir un nombre N entre 10 et 20")
Lire(N)
Tantque N<10 ou N>20 faire
Si N<10 Alors
Ecrire(" Plus grand!")
Sinon
Si N>20 faire
Ecrire(" Plus petit!")
Fin si
Fin si
Ecrire("saisir à nouveau un nombre N entre 10 et
20")
Lire(N)
Fin TantQue
Ecrire("C'est la réponse convienne")
Fin
Exercice 03 :
1-Ecrire un algorithme qui calcule S=1+2+3+4+5+…+N où N est un entier.
Algorithme : Somme_N_nombre
Variable : N,Som,i: Entier
Début:
Ecrire("saisir un nombre N")
Lire(N)
Som0 //initiation de som à 0
Professeur : ARROU ABDESSELAM Page | 6
LYCEE LISSANE EDDINE IBN KHATIB ANNEE SCOLAIRE 2018/2019
CENTRE CPAGE-LAAYOUNE-
Algorithme : Somme_Harmonique
Variable : N,Som,i: Entier
Début:
Ecrire("saisir un nombre N")
Lire(N)
Som0 //initiation de som à 0
Pour i allant de 1 à N faire
SomSom + 1/i
Fin Pour
Ecrire("La somme harmonique est :",Som)
Fin
Exercice 04:
1-Ecrire un algorithme qui affiche à l’écran le rectangle d’étoiles ci-dessous. Chaque
ligne contient 19 étoiles. Le nombre de lignes est de 10.
********************
********************
………………………..
********************
Indication : nous utiliserons l’instruction écrire (" \n ") pour effectuer un retour à la ligne
Algorithme : Rectangle_etoiles
Variable : i,j : Entier
Début:
//pour afficher ces étoiles on va utilisé les
boucles imbriquées.
Pour i allant de 1 à 10 faire
Pour j allant de 1 à 19 faire
Ecrire("*")
Fin Pour
Ecrire("\n")
Fin Pour
Fin
Algorithme : Triangle_etoiles
Variable : N,i,j : Entier
Début:
Ecrire("saisir la valeur de N")
Lire(N)
Pour i allant de 1 à N faire
Pour j allant de 1 à i faire
Ecrire("*")
Fin Pour
Ecrire("\n")
Fin Pour
Fin
Exercice 04:
2-Soit la suite