ALGORITHME DE BASE
MODULE I
Lino Christian. Analyste Programmeur/Master II en Réseaux et Télécommunication
Brazzaville, CONGO. BackSpace©2014
L i n o C
h r i s t i a n . A n a l y s t e P r o g r a m m e u r
/ M a s t e r
2
e n R é s e a u x
t é l é c o m
Page
2
CONCEPTION DE BASE DE
LALGORITHME
« Il y a 10 sortes de gens au monde : ceux qui connaissent le binaire et les autres » - Anonyme
Introduction
Ce cours se donne pour objectif ; la maîtrise des COMPÉTENCES suivantes :
comprendre et examiner un algorithme préexistant, son fonctionnement ou son but ;
modifier un algorithme pour obtenir un résultat précis ;
analyser une situation : identifier les données d’entrée et de sortie, le traitement, les
instructions... ;
créer une solution algorithmique à un problème donné : comment écrire un algorithme en «
langage courant » en respectant un code, identifier les boucles, les tests, les opérations
d’écriture, d’affichage... ;
valider la solution algorithmique par des traces d’exécution et des jeux d’essais simples ;
adapter l’algorithme aux contraintes du langage de programmation : identifier si nécessaire
la nature des variables... ;
Partie : 1
« Un langage de programmation est une convention pour donner des ordres à un ordinateur. Ce
n’est pas censé être obscur, bizarre et plein de pièges subtils. Ca, ce sont les caractéristiques de la
magie. » - Dave Small
1
1.
.
Définitions
Un ALGORITHME est une suite finie d’instructions élémentaires (règles), qui s’appliquent dans un
ordre déterminé à un nombre fini de données pour fournir un résultat. Il doit respecter les gles
suivantes :
Il est défini sans ambiguïté
Il se termine après un nombre fini d’opérations
Toutes les opérations doivent pouvoir être effectuées par un homme utilisant des moyens
manuels
Il manipule des données qui doivent être définis de façon très précise.
NB : un algorithme doit donc contenir uniquement des instructions compréhensibles par celui qui
devra l’exécuter.
L i n o C
h r i s t i a n . A n a l y s t e P r o g r a m m e u r
/ M a s t e r
2
e n R é s e a u x
t é l é c o m
Page
3
Toutes les données utilisées dans un algorithme doivent être déclarées, pour cela nous déterminons
quels sont les de valeurs constantes et variables.
Une CONSTANTE, comme une variable, peut représenter un chiffre, un nombre, un caractère, une
chaîne de caractères, un booléen. Toutefois, contrairement à une variable dont la valeur peut être
modifiée au cours de l’exécution de l’algorithme, la valeur d’une constante ne varie pas.
Une VARIABLE est une donnée (emplacement) stockée dans la mémoire de la calculatrice ou de
l’ordinateur. Elle est repérée par un identificateur (nom de la variable constitué de lettres et/ou de
chiffres, sans espace) et contient une valeur dont le type (nature de la variable) peut être un entier,
un réel, un booléen, un caractère, une chaîne de caractères… Il ne faut pas confondre constante et
variable.
OPERATEUR : est un outil qui permet d’agir sur une variable ou d’effectuer des calculs.
OPERANDE : est une donnée utilisée par un opérateur.
INCREMENTATION : c’est l’opération qui consiste à ajouter une valeur entière fixée à un compteur.
2
2.
.
Les données
Les données d’entrée : données fournies à l’algorithme ;
Les données de sortie : résultat produit par l’algorithme ;
Les données internes : ce sont les objets servant aux manipulations internes de l’algorithme ;
Le traitement d’un objet concerne la valeur de cet objet.
3
3.
.
Formalisme d’un Algorithme
Un algorithme sera défini par :
Un nom
Déclarations des variables et de constantes ;
Les actions constituant le traitement à exécuté seront délimitées par les termes : DEBUT et
FIN.
Remarque : afin de permettre une plus grandes visibilité, il faudra utiliser des commentaires
délimités par : /* commentaires */.
Programme nom_du_programme
/* Déclarations des constantes et des variables */
CONST nom_const = valeur
VAR nom_var : type
DEBUT
Instructions_1
Instructions_2
----------------
Instructions_n
FIN
L i n o C
h r i s t i a n . A n a l y s t e P r o g r a m m e u r
/ M a s t e r
2
e n R é s e a u x
t é l é c o m
Page
4
4
4.
.
Comment trouver un Algorithme
Question à me poser :
Quelles sont les données dont on dispose ?
Quelles sont les résultats que l’on doit obtenir ?
Comment obtenir ces résultats :
Appliquer les règles de gestion ;
Traité à plusieurs exemples significatifs (attention aux cas particuliers) ;
Ecrire les actions nécessaires pour le traitement.
5
5.
.
Validité d’un Algorithme
Pour être valable un algorithme doit répondre aux critères suivants :
Le résultat donné doit être le résultat attendu, c'est-à-dire que le programme doit donner le
bon résultat dans tous les cas de figures, il faut donc procéder à des tests par l’intermédiaire
de différents essais ;
L’algorithme doit s’arrêter une fois sa tâche accomplie ;
Le résultat doit être donné dans un temps acceptable ;
L’algorithme doit gérer au mieux la mémoire de l’ordinateur.
6
6.
.
Instruction élémentaire
Enfin, les ordinateurs, quels qu’ils soient, ne sont fondamentalement capables de comprendre que
quatre catégories d'ordres (en programmation, on n'emploiera pas le terme d'ordre, mais plutôt
celui d'instructions). Ces quatre familles d'instructions sont :
L’affectation ;
La lecture/écriture ;
Les tests ;
Les boucles.
a
a)
)
AFFECTATION :
L’instruction d’AFFECTATION permet d’attribuer une valeur à une variable. Cette
instruction est notée « identificateur prend valeur ». On peut aussi noter :
« identificateur valeur ».
b
b)
)
INSTRUCTION D’ENTREE / SORTIE
Nous disposerons d’une instruction de saisie qui permet de récupérer une valeur entrée au clavier
et d’une instruction d’affichage qui permet l’édition d’une valeur à l’écran.
L i n o C
h r i s t i a n . A n a l y s t e P r o g r a m m e u r
/ M a s t e r
2
e n R é s e a u x
t é l é c o m
Page
5
Instruction d’entée
L’ENTREE ou la lecture de données correspond à l’opération qui permet de saisir des valeurs
pour qu’elles soient utilisées par le programme. Cette instruction est notée « saisir identificateur »
ou « lire identificateur ».
Instruction de sortie
Afficher (valeur)
Précision : la valeur peut être :
Une constante ;
Une variable ;
Une expression.
Exemple 1 : Ecrire un algorithme permettant de calculer et d’afficher la somme de deux nombres
entiers saisie au clavier.
Programme somme_deux_nombre
/* déclaration des variables */
VAR nombre1, nombre2, somme : entier
Début
Afficher (« donner le premier nombre : »)
/* demande du premier nombre */
Lire (nombre1)
/* conservation de la valeur saisie au clavier dans la variable nombre1 */
Afficher (« donner le deuxième nombre : »)
/* demande du premier nombre */
Lire (nombre2)
/* conservation de la valeur saisie au clavier dans la variable nombre2 */
Somme nombre1 + nombre2
/* calcul de la somme */
Afficher (« la somme est : », somme)
/* affiche la valeur de la somme */
Fin
Exemple 2 : Ecrire un programme, qui n’à pas de variable, ni de constante, mais qui affiche un
résultat.
Si un tel programme existe, à vous de l’écrire…sinon oubliez cet exemple…Finsi
1 / 15 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 !