Vous êtes sur la page 1sur 9

TD 4 : Structure de répétition

Exo 1 :

Algorithme entier_positif

Var positif : entier ;

Debut

Repeter

Ecrire(‘Saisir un nombre entier positif inférieur à 100 :’) ;

Lire(positif) ;

Tant que (resultat > 100 ) ou (resultat < 0) ;

Lire(positif) ;

Ecrire(‘Merci pour le nombre’, positif) ;

Fin

Correction Exo 1 :

Algorithme entierPositif100

Var a : entier ;

Debut

Repeter

Ecrire(‘Donnez un entier positif et inférieur à 100 :’) ;

Lire(a) ;

Tant que (a < 0 ou a > 100) ;

Ecrire(‘Merci pour le nombre’, a ) ;

Fin
Exo2 :

Algorithme entierPositif100

Var a : entier ;

Var prem : booleen ;

Debut

prem <- VRAI ;

Repeter

Si prem alors

Ecrire(‘Donnez un entier positif et inférieur à 100 :’) ;

Prem <- FAUX ;

Sinon

Si (a < 0) alors

Ecrire(‘SVP, positif :’) ;

Fin si

Si (a < 100) alors

Ecrire(‘SVP, inférieur à 100 :’) ;

Fin si

Fin si

Lire(a) ;

Tant que (a < 0 ou a > 100) ;

Ecrire(‘Merci pour le nombre’, a ) ;

Fin
Exo 3 :

Algorithme entierPositif100

var a : entier ;

Debut

ecrire(‘Donnez un entier positif et inférieur à 100 :’) ;

lire(a) ;

Tant que (a < 0 ou a > 100) faire

ecrire(‘Donnez un entier positif et inférieur à 100 :’) ;

lire(a) ;

Fin tant que

ecrire(‘Merci pour le nombre’, a ) ;

Fin

Exo 4 :

Algorithme entierPositif100

var a : entier ;

Debut

ecrire(‘Donnez un entier positif et inférieur à 100 :’) ;

lire(a) ;

Tant que (a < 0 ou a > 100) faire

Si (x < 0) alors

Ecrire(‘SVP, positif :’) ;

Fin si

Si (x > 100) alors

Ecrire(‘SVP, inférieur à 100 :’) ;

lire(x) ;

Fin tant que

ecrire(‘Merci pour le nombre’, a ) ;

Fin
Exo 5 :

Ecrire un programme qui lit une suite de caractères, terminée par un point, et qui affiche le nombre
de caractères lus (point non compris).

Algorithme suite_caracteres

var a : caractere ;

var cpt : entier ;

Debut

cpt <- 0 ;

Repeter

ecrire(‘Saisir un caractère :’) ;

lire(a) ;

cpt <- cpt + 1 ;

Tant que (a <> ‘.’)

Ecrire(‘Le nombre de caractères saisi est :’ , cpt - 1) ;

Fin
Ecrire un programme qui affiche les carrés des nombres entiers de 7 à 20

Exo 6 :

Algorithme carre

var a, resultat : entiers ;

Debut

resultat <- 0

Pour a = 7 à 20 faire

resultat <- a*a ;

Ecrire(‘Le carré est :’ , resultat ) ;

Fin pour

Fin

Algorithme carre

var i : entier ;

Debut

Pour i de 7 à 20 faire

Ecrire (‘Le carré de ‘, i , ‘ est : ‘, i*i) ;

Fin pour

Fin

Algorithme carre Algorithme carre

var a, resultat : entiers ; var i : entier ;

Debut Debut

a <- 7 ; i <- 7 ;

Tant que ( a <= 20 ) faire Tant que (i <= 20 ) faire

resultat <- a*a ; Ecrire (‘Le carré de ‘, i , ‘ est : ‘, i*i) ;

Ecrire(‘Le carré est :’ , resultat ) ; i <- i + 1 ;

Fin tant que Fin tant que

Fin Fin
Ecrire un programme qui lit deux nombres entiers n1 et n2 et qui affiche les doubles des nombres
compris entre ces deux limites (incluses).

Exo 7:

Algorithme nombres_entiers

var n1, n2, resultat, i : entier ;

Debut

ecrire(‘Saisir un nombre entier :’) ;

lire(n1) ;

ecrire(‘Saisir un nombre entier :’) ;

lire(n2) ;

Pour i = n1 à n2 faire

resultat <- i * 2 ;

ecrire(‘Le double de ‘,i est : ’ ,resultat) ;

Fin pour

Fin

Algorithme double (avec POUR)

var n1, n2, i : entier ;

Debut

ecrire(‘Saisir la valeur de la borne inférieure :’) ;

lire(n1) ;

ecrire(‘Saisir la valeur de la borne supérieur :’) ;

lire(n2) ;

Pour i de n1 à n2 faire

ecrire(‘Le double de ‘,i,’ est :’,2*i) ;

Fin pour

Fin
Ecrire un programme qui lit une chaîne de caractères et qui calcule et affiche le nombre de 'A' et 'B'
(majuscules ou minuscules) dans cette chaîne.

Exo 8 :

Algorithmes nb_A_B

var ch : chaine ;

i, cpt_A, cpt_B : entier ;

Debut

cpt_A <- 0 ;

cpt_B <- 0 ;

ecrire(‘Saisir une chaine de caractères :’) ;

lire(ch) ;

Pour i de 1 à longueur(ch) faire

Si (ch[i] = ‘a’ ou ch[i] = ‘A’) alors

cpt_A <- cpt_A + 1 ;

Sinon si (ch[i] = ‘b’ ou ch[i] = ‘B’) alors

cpt_B <- cpt_B + 1 ;

Fin si

Fin pour

Ecrire(‘Nombre de A : ‘cpt_A) ;

Ecrire(‘Nombre de B : ‘cpt_B) ;

Fin
Ecrire un programme qui calcule la somme des 40 premiers nombres pairs.

Exo 9 :

Algorithme sommes_pair

var somme, i : entier ;

Debut

somme <- 0

i <- 1 ;

Pour que i de 1 à 40 faire

somme <- somme + 2*i ;

i <- i + 1 ;

Fin pour

Ecrire (‘La somme des 40 premiers pairs est : ‘,somme) ;

Fin

Si x est pair alors x mod 2 = 0

X = 2*q (q est un entier)

8 = 2*4 4 = 2*2

6 =2*3
Ecrire un programme qui calcule la somme des 40 premiers nombres impairs.

Exo 10 :

Exo 9 :

Algorithme sommes_pair

var somme, i : entier ;

Debut

somme <- 0

i <- 1 ;

Pour que i de 1 à 40 faire

somme <- somme + 2*i +1 ;

i <- i + 1 ;

Fin pour

Ecrire (‘La somme des 40 premiers impairs est : ‘,somme) ;

Fin

X est impair si x mod 2 = 1

Il est existe un entier q tel que :

x= 2*q+1

9= 2*4 +1

11= 2*5+1

Vous aimerez peut-être aussi