Vous êtes sur la page 1sur 3

ENS BTA Département Info TIC 4

CHAPITRE 1 : DU PROBLEME A SA RESOLUTION

1.1 Introduction

L’Algorithmique a pour but de permettre la résolution des problèmes par des


algorithmes. La résolution informatique d’un problème passe généralement par 5 grandes
étapes :

 L’analyse du problème : Elle consiste identifier toutes les grandeurs connues et les
grandeurs recherchées, ainsi que les différentes relations qui existent entre elles. Ceci
conduit dans certains cas, un modèle qui peut être une équation, un système
d’équation, …
 L’élaboration de l’algorithme : Il s’agit ici, d’écrire un ensemble d’instructions
permettant de trouver les grandeurs cherchées. Un algorithme est semblable à une
recette de cuisine décrivant un ensemble d’instructions permettent la réalisation d’un
plat ou à un mode d’emploi pour faire fonctionner un appareil.

L’algorithme est donc une suite logique, ordonnée et finie d’instructions qui une fois
exécuté correctement conduit la résolution d’un problème. Si l’algorithme est juste, le
résultat est celui voulu (on obtient un plat bien fait, s’il est faux, le résultat est imprévisible.

 La programmation ou codage : Un programme informatique est la traduction d’un


algorithme dans un langage spécifique appelé Langage de programmation.

Un langage de programmation est un ensemble de mots et de signes (vocabulaire) avec une


syntaxe (grammaire) et une sémantique non ambiguë qui peut être traduit en langage machine
(compréhensible par un Ordinateur) par un outil spécifique qui est le Compilateur de langage.

 La compilation : Un programme écrit dans un langage de programmation n’est pas


encore compréhensible par un ordinateur. Pendant la compilation, le code source du
programme (algorithme traduit en langage pascal par exemple) est traduit en code
objet binaire ou langage machine (et donc exécutable par un ordinateur).
 L’exécution : Le programme exécutable résultant de la compilation est alors exécuté
pour résoudre le problème posé.

NB : Un algorithme exprime les instructions résolvant un problème donné indépendamment


des particularités d’un langage de programmation. Il se contente de manipuler la structure
logique du programme.

1.2 Quel langage pour écrire les algorithmes ?

Pour écrire les algorithmes, on utilise généralement une série de convention appelée « pseudo
code » qui ressemble à un langage de programmation authentique dont on aurait évacué la
plupart des problèmes de syntaxe. Ce pseudo code est susceptible de varier légèrement d’un
livre à un autre ou d’un enseignant à un autre.

Le langage algorithmique que nous allons utiliser dans le cadre de ce cours est un compromis
entre un langage naturel (le français) et un langage de programmation.

1
ENS BTA Département Info TIC 4

1.3 Structure d’un algorithme

Algorithme < Nom Algorithme >


Const (constante) < C1 = val1 ; > Entête de l’algorithme
< Cn = valn ; > Type et nom de l’algo +
déclarations des
Var (variable) < Var1 = type Var1; > constantes et variables.
< Varn = type Varn; >
Début
< Instruction 1 ; > Corps de l’algorithme
< Instruction n ; > (Listes d’instructions)
Fin
Les termes algorithme, Const, Var, début et fin sont les « mots clés » du langage
algorithmique.

Exemple d’algorithme

Algorithme Affichage ;

Const N = 100 ;

Var Nom : chaîne de caractère

Age : entier

Début

Afficher (‘ entrer votre nom’ ) ;

Lire (nom) ;

Afiicher (‘ entrer votre âge ‘ ) ;

Lire (Age) ;

Afficher (‘ Bonjour ‘,nom) ;

Afficher (‘ votre âge est ‘,age) ;

Afficher (‘ valeur de la constante : ‘,N) ;

Fin

1.4 Les qualités d’un bon algorithme

Un algorithme doit avoir les qualités suivantes :

- Chaque action est définie de façon précise et sans ambiguïté


- Chaque action est effective c’est-à-dire peut-être effectivement exécutée

2
ENS BTA Département Info TIC 4

- Quel que soit les données, l’algorithme doit se terminer et fournir des résultats
- Il doit fournir le même résultat chaque fois qu’on l’exécute sur le même ensemble de
donnée.
- Il doit consommer le moins de ressources (l’espace mémoire, le temps d’exécution)
possible.

NB : Le nom d’un algorithme n’est jamais espacé et n’admet pas d’apostrophe.

1.5 Les avantages de la démarche algorithmique

Il est tout à fait légitime de se poser la question de savoir s’il ne serait pas plus rapide d’écrire
directement les instructions de résolution d’un problème dans un langage de programmation.

En réalité, la demande algorithmique est conseillée et possède plusieurs avantages parmi


lesquelles :

 L’algorithme étant indépendant d’un langage de programmation, le passage d’un


langage à un autre est beaucoup plus facile. Les structures de données abstraites ne
changent pas, seuls les détails liés aux particularités d’un langage sont à refaire.
 Le travail en équipe est favorisé ; car la discussion et la correction sont plus facile ; On
peut analyser et vérifier les algorithmes qui sont beaucoup plus compréhensible car
écrit en langage presque naturel.

Vous aimerez peut-être aussi