Exercice Algorithme : Structures répétitives (Suite..)
![](/images/thumb/46/default.png)
Objectif: Réaliser des Algorithmes en utilisant les structures répétitives
Enoncé:
A) Ecrire un algorithme permettant la saisie d’une suite d’entiers se terminant par zéro et vérifier si cette suite contient deux entiers consécutifs égaux en utilisant les structures tant que.
- donner les spécifications
- donner la solution en langage naturel
- indiquer les structures de données
- faites l’algorithme
B) Ecrire un algorithme qui affiche le maximum d’une suite se terminant par zéro
- donner les spécifications
- donner la solution en langage naturel
- indiquer les structures de données
- faites l’algorithme
A) Ecrire un algorithme permettant la saisie d’une suite d’entiers se terminant par zéro et vérifier si cette suite contient deux entiers consécutifs égaux en utilisant les structures tant que.
Spécifications :
- données : suite d’entier se terminant par zéro
- résultat : vrai si deux entiers consécutifs, faux sinon.
Solution en langage naturel : comparer l’entier courant et le précédent. Et tant que ils sont différents, on continu la lecture et tant que l’entier courant est différent de zéro.
Structures de données :
- entier : nombre courant
- entier : nombre précédent
Algorithme :
Action : Entiers consécutifs
Var : nc, np : entier
{on désignera par nc le nombre courant et np le nombre précédent}
Début Lire (nc)
np<=nc-1
{pour être sur que le nombre courant ne sera pas le même que le nombre précédent dès le départ on affecte la valeur nc-1 au nombre précédent. On aurait tout aussi bien pu lui donner
la valeur zéro)
Tant que nc?0 et np ?nc faire
Début
np<=nc
lire (nc)
fin
Si nc?0 alors écrire (« oui »)
Sinon écrire (« non »)
Fin
Refaire le même algorithme en utilisant une structure répéter jusqu'à
Action : Entiers consécutifs
Var : nc, np : entiers
Début
Lire (nc)
Si nc ? 0 alors Répéter
Début
np <= nc
lire (nc)
jusqu'à (nc=np ou nc=0)
Si nc=0 alors écrire (« oui »)
Sinon écrire (« non »)
Fin
B) Ecrire un algorithme qui affiche le maximum d’une suite se terminant par zéro
Spécifications :
- données : une suite d’entiers se terminant par zéro
- résultat : un entier : le maximum de cette suite
Solution en langage naturel : comparer l’entier courant avec le maximum et tant que nc
Structures de données
- n : entier courant (saisi)
- max : entier max de la suite
Algorithme :
Action : max suite
Var : n, max : entiers
Début Lire (n)
Max<=n
Tant que n? 0 faire
Début
Lire (n)
Si max
Fin
Ecrire (max)
Fin