logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

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 → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

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 18:54]
Hypathie [Exo 2 : procédure compter occurrences de deux caractères successifs]
utilisateurs:hypathie:tutos:algo-exo-constructions-d-algorithmes-de-procedure [30/11/2014 08:23]
Hypathie [Exo 3 : procédure rechercher un palindrome]
Ligne 258: Ligne 258:
 </​code>​ </​code>​
 ===== Exo 3 : procédure "​rechercher un palindrome"​ ===== ===== Exo 3 : procédure "​rechercher un palindrome"​ =====
 +//​**Procédure pour déterminer si une chaîne de caractère terminée par un point est un palindrome.**//​
 +
 +====1) Moulinette (schéma de la procédure)====
 +
 +chaîne. ---> | recherche palindrome | ---> palindr : booléen (Vrai ou FAUX)
 +
 +<​code>​
 +i (indice ->​) ​     ​
 +  1   ​2 ​  ​3 ​  ​4 ​  5 | 6 |... | MAX
 +----------------------------------
 +| L | A | V | A | L | . |
 +        j (indice <-|.| )
 +</​code>​
 +        ​
 +====2) Jeu d'​essai====
 +
 +^         ​^ ​                           ^
 +| '​.' ​    | c'est un palindrome ​       |
 +| '​a.' ​   | c'est un palindrome ​       |
 +|'​aa.' ​   | c'est un palindrome ​       |
 +| '​aba.' ​ | c'est un palindrome ​       |
 +| '​acb' ​  | ce n'est pas un palindrome |
 +| '​aacba.'​| ce n'est pas un palindrome |
 +|'​aacab ​  | ce n'est pas un palindrome |
 +
 +====3) Définition des données du problème====
 +<​code>​
 +CONSTANTES ​
 +taille =80 //nombre max de caractères de la chaîne
 +carterm ='​.'​ // caractère terminaleur de la chaîne
 +
 +TYPE 
 +chaine =tableau[taille] de caractères // type crée pour contenir une liste 
 +
 +VARIABLES ​
 +phrase : chaine // phrase où une symétrie est recherchée
 +i      : entier // 
 +j      : entier // indice de parcours de la phrase depuis la fin.
 +</​code>​
 +
 +====4)Interface (notice) de la procédure ==== 
 +
 +====5)Programme de test ====
 +
 +====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
 +
 +  Début
 +  ​
 +    écrire('​Donnez une phrase."​
 +    lire(phrase)
 +    ​
 +    j := 1
 +    ​
 +    TantQue ​ phrase[j] <> carterm FAIRE //arrêt sur terminateur
 +          ​
 +          j := j + 1
 +    ​
 +    FinTantQue
 +    ​
 +    //Parcours par les deux bouts
 +    j := j - 1
 +    i := 1
 +    ​
 +    TantQue (i<j) ET (phrase[i] = phrase[j]) FAIRE
 +        ​
 +        j := i + 1
 +        i := j - 1
 +    FinTantQue
 +    ​
 +    //Affichage du résultat
 +    ​
 +    SI i >= j ALORS // Fin du parcours
 +       ​écrire("​C'​est un palindrome"​)
 +    SINON
 +       ​ecrire("​Ce n'est pas un palindrome"​)
 +    FinSI
 +    ​
 +  Fin
 +</​code>​
  
utilisateurs/hypathie/tutos/algo-exo-constructions-d-algorithmes-de-procedure.txt · Dernière modification: 06/12/2014 17:08 par Hypathie

Pied de page des forums

Propulsé par FluxBB