CONSEIL:REDACTION D'UN ALGORITHME

              CONSEILS POUR L'ECRITURE D'UN ALGORITHME        BTS SIO 1    Septembre 2011

                                La lisibilité des algorithmes est un critère de qualité .

                                Un algorithme correct mais indéchiffrable ne sera pas utilisé.

  .I. Structure de l’algorithme.

                            Un algorithme" papier" comporte trois parties :

        Partie1.    Un en-tête :

                         Ce peut être un rectangle ou un cartouche .

                        ( Avec ALGOBOX ce cartouche figure automatiquement à l'écran. )

                         Il ne faut pas "bacler" cette partie en pensant que l'algorithme 

                         est pour soi. 

                        Au contraire il faut penser à la personne qui aura à l'utiliser.

                        Elle doit comprendre:  ( Dans le cartouche )

------------------------------------------------------------------------------------------------------------

     • Le titre :

                      Il doit permettre de comprendre ce que fait l’algorithme.                    

    Le rôle   de l’algorithme.

     L’indication des données  d'entrée et de sortie.

------------------------------------------------------------------------------------------------------------

                       De nombreux algorithmes ont pour but de communiquer

                       avec un utilisateur : question-réponse.

                       Cela se fait donc dans les deux sens, les ENTREES sont des

                       informations fournies par l’utilisateur, les SORTIES sont des envois

                       de messages à l’utilisateur .

        Partie 2. La déclaration de variables.( Selon le type de langage )

               Noms des variables, avec leur type.

               Selon les langages la déclaration se fait de façon préalable ( ALGOBOX)

               ou beaucoup plus discrètement en indiquant une valeur prise

               par la variable ( PYTHON ).

         Partie 2. Les instructions :

            C'est  le "corps de l’algorithme", cette partie contient une succession

           d’instructions en utilisant le code propre au langage considéré.

          .II. Les commentaires

                        Des commentaires peuvent  être ajoutés, notamment pour préciser

                        le rôle des variables et d’éventuelles indications méthodologiques.

                       Ils permettent d'identifier plus aisément les différentes parties du programme.

                       #  x est la longueur du rectangle ABCD.

                       Ils aident à la compréhension des techniques employées et

                       précisent les rôles des variables dont les noms ne suffisent  pas.                        

                       Il ne faut cependant ne pas en abuser car ils peuvent rendre,

                      au contraire, très pénible la lecture de l'algorithme.

           III. Les noms de variables

                           Les noms de variables ne peuvent  pas comporter d'espace et

                           ne peuvent pas commencer par un chiffre.

                           D'une façon générale, on utilise seulement les caractères alphanumériques

                          non accentués et le tiret de soulignement _  .

                           La lisibilité d'un algorithme étant fondamentale, il est important

                          de choisir des noms de variable reflétant le rôle joué par la variable

                          en question.

                          Il faut être homogène dans l’utilisation des minuscules et majuscules.

                          Par exemple voici quelques noms de variable valides :

                           K

                          Jour

                          Resultat_00

                          NbreValeurs 

                          Nom_Ville                                                                                                                      

 

                  IV. Indentation  ( TRES  IMPORTANT )

                               On n'écrit pas un algorithme, comme en français, en retournant à la ligne.

                               Il y a des conventions.

                               Pour faire "tourner " un algorithme , le code doit être correctement indenté.

                               En langage Python une mauvaise indentation bloque l'éxécution de l'algorithme.

                               Par exemple après un double point comme " : "

                               le retour à la ligne se fait en se décalant vers la droite...

                            • Exemple sous Python:

                               def fonctionf(x):

                                ..... y =x**2

                                      ...................

                                                                     est une indentation correcte

                                  (  Le y de y =x**2 est en dessous du f qui est la première lettre qui suit def )

                                           Cela signifie que   y =x    c-à-d   f : x →x2

                              Par contre: 

                              def fonctionf(x):

                              y =x**2

                              .................................

                                                                est une indentation incorrecte

                                                                 Il y aura un message d'erreur

-------------------------------------------------------------------------------------------------------------------------------------------

 
              Algorithme:

                    Exemple_tests_imbriques

 -------------------------------------------------------------------------------------------------

                  Rôle:

                          Afficher si la personne peut voter, conduire, seule

                          ou accompagnée.

                Entrée :

                          Age de la personne ( pas ^sur les caractères ).
                Sortie :

                       Affichage de la possibilité de voter, de conduire,

                       de conduire seul ou accompagné.

---------------------------------------------------------------------------------------------------------------

              VARIABLE: ( Déclaration selon le langage )


                      Entier : Age
                      Booléen : Voter Chaîne : Conducteur

             DEBUT_ALGORITHME 

                     Afficher "Quel est votre âge ? "
                     Saisir Age
                      Si Age ≥ 18 Alors 
                      Voter ← Vrai
                       Conducteur ←"possible seul"
                      Sinon 
                      Voter ←Faux
                       Si Age ≥ 16 Alors 
                       Conducteur ←"possible accompagné"

                      Sinon 
                       Conducteur ← "impossible"
                      Fin Si 
                     
Fin Si 
                     
FIN_ALGORITHME

-----------------------------------------------------------------

                       Algorithme : 

                             Exemple_tests_non_imbriques

-----------------------------------------------------------------------------------------------------

           Même cartouche.

              Rôle :

                     Afficher si la personne peut voter, conduire,

                      seule ou accompagnée.

           Entrée :

                          Age de la personne.
           Sortie :

                     Affichage de la possibilité de voter, de conduire,

                     de conduire seul ou accompagné.

----------------------------------------------------------------------------------------------------

Variables :
                  Entier : Age
                  Booléen : Voter Chaîne : Conducteur

DEBUT_ALGORITHME
                 Afficher "Quel est votre âge ? "

                 Saisir Age
                  Si   Age ≥ 18  Alors

                 Voter ← Vrai

                Conducteur ←"possible seul"

                Sinon

                Voter ←Faux

                Fin Si 


                Si Age ≥ 16 Alors

               Conducteur ←"possible accompagné"

               Sinon

               Conducteur ← "impossible"

              Fin Si

FIN_ALGORITHME

-----------------------------------------------------------------------------------------------------------

Algorithme : Exemple_tests_imbriques

rôle : afficher si la personne peut voter, conduire, seule ou accompagnée

Entrée : âge de la personne
Sortie : affichage de la possibilité de voter, de conduire, de conduire seul ou accompagné

Variables :
Entier : Age
Booléen : Voter Chaîne : Conducteur

Début
Afficher "Quel est votre âge ? "

Saisir Age
Si Age ≥ 18 Alors

Voter ← Vrai

Conducteur ←"possible seul" Sinon

Fin Si Fin

Voter ←Faux
Si Age ≥ 16 Alors

Conducteur ←"possible accompagné" Sinon

Conducteur ← "impossible" Fin Si

page2image24608