Algorithmique et programmation 1 JFA11
Algorithmique et Programmation
A). Introduction :
Quand on utilise une carte à microprocesseur ou un microcontrôleur, il faut fournir au processeur, les
instructions à exécuter pour aliser la fonction désirée. Pour cela, on doit lui fournir un programme
exécutable.
Pour créer ce programme exécutable, il faut analyser de manière rigoureuse les tâches à faire exécuter au
microprocesseur et en déduire les actions à effectuer, pour les traduire en programme.
B). Etude et traduction :
Après l’étude des tâches à réaliser, il faut traduire et décomposer le travail à effectuer en sous tâches à
l’aide
I ). I) Psentation :
Il est impossible d'écrire un programme correct du premier coup, depuis la première ligne jusqu'à la
dernière. Un programme est l'aboutissement d'un travail méthodique résumé par le schéma suivant :
Programme
executable
Algorithmique et programmation 2 JFA11
PROBLEME
DEFINITION
1
TESTS
5
CORRECTIONS
4
TRADUCTION
3
ANALYSE
2
1°). Première étape : Définition du problème :
Il faut être capable de définir très précisément tout ce que l'on attend du programme. Pour cela il
faut connaître quelles sont les informations nécessaires à la résolution du problème :
qui va les fournir et sous quelle forme,
est-on sûr de la validité de ces données ou faut-il les contrôler pour s'assurer quelles sont
conformes à ce que l'on avait prévu ?
Il faut également réfléchir à la présentation des résultat.
Exemple :
Ecrire un programme qui permet d’entrer 10 nombres.
2°). Seconde étape : Analyse structurée et pseudo code ou algorigramme :
Une fois les données déterminées et les sultats explicités, il ne reste plus qu'à trouver la méthode
qui permet d'obtenir les résultats à partir des données. Si la solution n'est pas évidente du premier coup
d'oeil, il est nécessaire :
- de le découper en sous-problèmes,
- et de le structurer.
Lorsqu'un problème est trop complexe, il faut le couper en plusieurs tâches distinctes, auxquelles
on attribue un nom significatif, de manière que le problème paraisse solu avec la résolution des
sous-problèmes.
Puis on traite chaque tâche suivant le même processus, en la subdivisant en sous-tâches jusqu'à ce
que celles-ci deviennent évidentes à résoudre.
La structuration consiste à organiser les sous-tâches obtenues par la thode de découpage,
de manière que leur agencement réponde effectivement au problème posé.
Une fois cet agencement trouvé, il reste à le traduire en pseudo code.
Exemple : Comptage de 10 nombres saisis au clavier :
Algorithmique et programmation 3 JFA11
En Pseudo Code :
Variables :
COMPTEUR : entier
NOMBRE : réel
Début
COMPTEUR = 0
Tantque (COMPTEUR < 10) faire
Saisir NOMBRE (on saisit le nombre)
COMPTEUR = COMPTEUR + 1 (on incrémente la variable)
Fintantque
Fin
En organigramme :
3°). Troisième étape : traduction :
Une fois la décision prise du langage utilisé, si l'analyse et la structuration et la traduction en
pseudo code (ou en algorigramme) ont éfaite correctement, la traduction ou le codage est simple à
réaliser.
Exemple : en langage C :
Main ()
Int COMPTEUR ;
Float NOMBRE ;
{
COMPTEUR = 0 ;
While (COMPTEUR < 10) do {
Getch (NOMBRE) ;
COMPTEUR = COMPTEUR + 1 ;
}
Algorithmique et programmation 4 JFA11
}
4°). Quatrième étape : Tests :
Il reste maintenant à passer la dernière étape, qui est en faite l'aboutissement de tout notre travail, à
savoir si notre programme remplit bien les tâches prévues.
5°). Cinquième étape : Corrections :
Cette étape est normalement inutile si l'analyse et la structuration ont été faites correctement. Mais
l'erreur est humaine !
6°). Sixième étape : Documentation :
Cette étape est souvent négligée à tort car elle permet une meilleure utilisation du programme, et
surtout une maintenance aisée. Il faut penser à l'utilisateur qui ne connaît pas forcément bien
l'informatique. Vous vous êtes sûrement déretrouvé devant un programme avec sa documentation et
ne pas savoir par où commencer.
II ). DEFINITION DU PROBLEME :
1°). Définition des variables d'entrées et de sorties :
On devra établir la liste des variables d'entrée et de sortie dont le programme a besoin. On pourra se
poser les questions suivantes :
- Sous quelle forme se présentent ces entrées ou ces sorties
(bit, octet, caractère, texte, ...)
- Quelle est la nature de ces entrées ou de ces sorties.
(temporaires, constantes, variables)
Il faudra leur choisir un nom évocateur de ce qu'elles représentent et ne pas hésiter à mettre un
commentaire en face de leur déclaration.
Exemple :
compteur boucle, nom, voyelle, ...
et non toto, tata, titi ...
2°). Contraintes supplémentaires :
Avant de s'attaquer à la résolution du problème, il faut encore répondre à quelques questions :
- Quelle est la procédure de base qui transforme les entrées en sorties ?
- Y a-t-il des contraintes de temps ?
- Y a-t-il des contraintes mémoires ?
- Y a-t-il des cas particuliers à traiter ?
- Quelle est la précision des résultats à fournir ?
- Comment le programme doit-il traiter les erreurs d'exécution, de débordement, d'entrées, de
sorties ?
Toutes ces questions sont à se poser avant d'écrire la moindre ligne de programme.
Algorithmique et programmation 5 JFA11
III ). CONCEPTION DU PROGRAMME :
1°). Principes de bases de la conception d'un programme :
Une fois le problème résolu et découpé, il faut le traduire en algorithme. Et c’est la version traduite
de l’algorithme qui sera notre programme. Ce programme dit source sera aussi traduit ensuite en un
programme exécutable par l'ordinateur.
Un algorithme doit être clair et lisible, pour cela un peu de soin dans sa présentation est nécessaire.
Aucun flou artistique n'est tolérable.
L'analyse/programmation peut donc être résumée dans le schéma suivant :
REALISATION ?
COMPILATION
PROGRAMMATION
ANALYSE
PROGRAMME ECRIT EN
LANGAGE EVOLUE
PROGRAMME
EXECUTABLE
ALGORITHME
PROCESSUS A
AUTOMATISER
L'analyse et la programmation sont à notre charge,la compilation est à la charge d'un programme
traducteur, appelé compilateur.
L’algorithme peut*être présenté sous deux formes :
En organigramme ou,
en pseudo code.
2°). Qu'est ce qu'un algorithme ?
Un algorithme est une série d’actes ou d’opérations élémentaires qu’il faut exécuter en séquence
pour accomplir une tâche quelconque, en suivant un enchaînement strict.
Remarque :
Lorsqu’il sera demandé d’élaborer un algorithme, la méthode pour atteindre cet objectif sera
de rédiger en français la succession des opérations élémentaires (phases courtes et précises) puis
de passer à une écriture conventionnelle appelée pseudo-code.
3°). Algorithme : Structure.
1. Un algorithme en pseudo-code ou sous forme d'organigramme, un programme en langage évolué
sont toujours structurés de façon suivante:
Déclarations,
Constantes
1 / 19 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !