Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format
PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
utilisateurs:hypathie:tutos:algo-exo-constructions-d-algorithmes-de-procedure [29/11/2014 19:44] Hypathie [Exo 3 : procédure rechercher un palindrome] |
utilisateurs:hypathie:tutos:algo-exo-constructions-d-algorithmes-de-procedure [30/11/2014 10:00] Hypathie [Exo 3 : procédure rechercher un palindrome] |
||
---|---|---|---|
Ligne 262: | Ligne 262: | ||
====1) Moulinette (schéma de la procédure)==== | ====1) Moulinette (schéma de la procédure)==== | ||
- | chaîne ---> | recherche palindrome | ---> palindr : booléen (Vrai ou FAUX) | + | chaîne. ---> | recherche palindrome | ---> palindr : booléen (Vrai ou FAUX) |
- | i : indice | + | <code> |
+ | i (indice ->) | ||
1 2 3 4 5 | 6 |... | MAX | 1 2 3 4 5 | 6 |... | MAX | ||
---------------------------------- | ---------------------------------- | ||
- | | L | A | V | A | L | . | + | | L | A | V | A | L | . | |
- | + | j (indice <-|.| ) | |
+ | </code> | ||
+ | | ||
====2) Jeu d'essai==== | ====2) Jeu d'essai==== | ||
Ligne 280: | Ligne 283: | ||
|'aacab | ce n'est pas un palindrome | | |'aacab | ce n'est pas un palindrome | | ||
- | ====3) Définition des données==== | + | ====3) Définition des données du problème==== |
<code> | <code> | ||
CONSTANTES | CONSTANTES | ||
Ligne 287: | Ligne 290: | ||
TYPE | TYPE | ||
- | chaine =tableau[taille] de caractères\\ | + | chaine =tableau[taille] de caractères // type crée pour contenir une liste |
VARIABLES | VARIABLES | ||
Ligne 299: | Ligne 302: | ||
====5)Programme de test ==== | ====5)Programme de test ==== | ||
- | ====6)Algorithme de la procédure ==== | + | ====6)Algorithme de la procédure Palindrome terminé par un point==== |
+ | |||
+ | <code> | ||
+ | CONSTANTES | ||
+ | taille =80 //nombre max de caractères de la chaine | ||
+ | carterm = '.' // caractère terminateur | ||
+ | |||
+ | TYPES | ||
+ | chaîne =tableau[taille] de caractère | ||
+ | |||
+ | VARIABLES | ||
+ | phrase :chaîne //phrase dont on va déterminer la symétrie | ||
+ | i :entier //indice de parcours de la phrase par le début | ||
+ | j :entier //indice de parcours de la phrase par la fin | ||
- | <code c> | ||
Début | Début | ||
| | ||
Ligne 309: | Ligne 324: | ||
j := 1 | j := 1 | ||
| | ||
- | TantQue phrase[j] <> carterm FAIRE //arrêt sur terminateur | + | TantQue phrase[j] <> carterm FAIRE |
| | ||
- | j := j + 1 | + | j := j + 1 //arrêt car on est sur terminateur |
| | ||
FinTantQue | FinTantQue | ||
| | ||
- | //Parcours dans chaque sens | + | //Parcours par les deux bouts |
- | j := j - 1 | + | j := j - 1 |
i := 1 | i := 1 | ||
| | ||
Ligne 322: | Ligne 337: | ||
| | ||
j := i + 1 | j := i + 1 | ||
- | i := j + 1 | + | i := j - 1 |
FinTantQue | FinTantQue | ||
| |