Développer votre algorithme

L’élaboration d’un algorithme est la tâche la plus complexe dans le cycle de développement d’un programme.

Une fois que le problème a bien été défini et raffiné, on produit une esquisse du programme, étapes 1, 2 et 3. Cette esquisse démontre seulement les processus généraux qui seront utilisés pour résoudre le problème et non la logique ou les détails de traitement.

À partir de l’esquisse, le programmeur interprète chaque processus et utilise les trois structures de contrôle du théorème structuré, les structures séquentielles, de décision et de répétition, pour établir la logique du problème. Pour l’instant nous n’avons pas encore traité des structures de de décision et de répétition alors nous allons résoudre ce problème avec la structure séquentielle.

Toutes les instructions seront exécutées en ordre séquentiel. Dans les prochains chapitres, vous allez apprendre à utiliser les autres structures de contrôle pour raffiner d’avantage vos solutions.Le premier essai à la production d’un algorithme est souvent incomplet.

L’algorithme manque certaines étapes logiques, certaines étapes devront subir des modifications ou même être remplacées. L’élaboration de l’algorithme est seulement une autre étape dans ce processus continu de raffinement. Alors il ne faut pas se décourager si un algorithme ne produit pas le résultat attendu.

Il s’agit de simplement repenser à la définition du problème et d’identifier les lacunes. Le pseudocode est un outil très utile dans ce processus. L’élaboration de l’algorithme à l’aide de pseudocode permet de voir tous les détails de logique dans un langage facile à comprendre facilitant le repérage de pro-blèmes avec la logique. N’hésitez pas à modifier un algorithme ou même de rejeter un algorithme au complet et recommencer une nouvelle définition du problème car si l’algorithme n’est pas correct, le programme ne le sera pas non plus.

Toutes les étapes dans la colonne Processus du diagramme de définition sont directement liées à un ou plusieurs énoncés dans l’algorithme.

Par exemple, dans le diagramme de définition, il y a le processus Addi-tionner trois nombres et, sous ce processus il y a l’équation qui permet d’effectuer cela mais, c’est seulement l’équation qui figure dans l’algorithme. C’est pour ça que nous utilisons l’indentation dans les diagrammes.Le diagramme de définition indique deux processus Inviter saisi de Nombre_1, Nombre_2 et Nombre_3, suivi de Lire Nombre_1, Nombre_2 et Nombre_3. Lorsque l’on traduit ce type de processus en pseudocode ou en ordinogramme, il n’est pas nécessaire d’inclure une ligne pour l’invite et une ligne pour la saisie.

Il est sous-entendu que le programme doit d’abord demander à l’utilisateur de saisir une valeur et ensuite le pro-gramme attend que l’utilisateur saisisse cette valeur au clavier. Donc ces deux instructions sont souvent jumelées ensemble dans un seul énoncé, Saisir, en pseudocode ou dans un symbole d’entrée/sortie dans l’ordinogramme. Ceci étant dit, vous pouvez séparer cette opération de saisie en ces deux compo-sants si cela peut aider à la compréhension du problème ou clarifier la logique pour un programmeur peu expérimenté.

Il est plus facile à trouver une erreur dans un bloc de pseudocode que dans un bloc de code source. Si une erreur est détectée pendant la phase de codage, votre attention sera consacrée à trouver l’erreur dans une ligne de code spécifique et non la logique initiale de l’algorithme.

Au moment de coder le programme il est difficile de revenir en arrière et d’analyser de nouveau le problème au complet pour revoir la logique. Le résultat est que vous pouvez passer plusieurs heures frustrantes à trouver un petit problème qui pourrait facilement être trouvé avec quelques minutes de validation de l’algorithme.

Pour valider un algorithme il suffit d’effectuer un jeu d’essais avec des valeurs appropriées au problème. Vous passez à travers chaque ligne de logique de la solution exactement dans la même séquence que l’ordinateur le fera et vous utilisé des valeurs connus. Après chaque ligne ou instruction, vous tenez compte de la valeur de chaque variable.

À la fin du jeu d’essais vous comparez le résultat obtenu avec le résultat attendu et si les deux résultats sont identiques, vous venez de valider l’algorithme. Un autre bénéfice d’effectuer des jeux d’essais pour tester l’algorithme est que la répétition des instructions vous permet de mieux comprendre le fonctionnement du programme.

Vous aimerez aussi...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Résoudre : *
25 + 3 =