Vous êtes sur la page 1sur 10

INTRODUCTION A

L’ALGORITHMIQUE
Chapitre 1

Année universitaire 2019/2020 – Semestre 1

1
Éléments de contenu

Qu’est ce qu’un algorithme ?

Démarche de programmation

Exemple de problème : équation du second degré

Généralisation des étapes de résolution

2
I. Qu’est ce qu’un algorithme?

L’algorithme est un terme arabophone systématisé par le mathématicien


Al Khuwarezmi.

Définition : Un algorithme est une séquence d’instructions énoncés


dans un ordre séquentiel, appliquée sur un ensemble de données en
entrée afin de donner une solution à un problème donné (un résultat).

Un algorithme s’écrit en un langage naturel avec des


instructions universelles, compréhensibles et indépendantes du
langage de programmation
Données en entrée Résultats

Traitement = {}
d’instructions

3
II. Démarche de programmation

4
II. Démarche de programmation
Problème : Toute situation dont la résolution peut être confiée à un
ordinateur.

Enoncé du problème : La première chose à faire quand on


aborde la solution d'un nouveau problème, c’est de lire l’énoncé
du problème attentivement et essayer de comprendre le demandé,

Spécification :il s’agit de déterminer les données déclarées dans le


problème et l’objectif qui représente la solution à chercher => distinction
des données d’entrée et ceux de sortie

Analyse : essayer dans cette phase de déterminer tous les cas


envisageables qui vont mener à l’obtention de la solution voulue

'' Il faut réfléchir avant de programmer, après c'est trop tard. ''
Henry Ledgard, Les proverbes de la programmation.

5
II. Démarche de programmation

Traduction de l’algorithme : c’est le fait de traduire l’algorithme en un


langage haut niveau compréhensible par la machine tel que le langage
C

Compilation du programme : cette étape est très importante, elle permet


de tester s’il existe des erreurs syntaxiques ou sémantiques dans le
programme élaboré

Tests et modification :c’est l’étape finale, elle comporte les différents


tests des cas envisageables précédemment déterminés dépendant des
données d’entrée et vérifier s’ils mènent tous vers la bonne solution.
Dans le cas contraire, le développeur doit modifier le code de son
programme,

6
I. Démarche de programmation

Problème :Mode d'expression de l'analyse, en un nombre


fini d'étapes, indépendant du langage de programmation utilisé
par la suite.

Programmation : Codification ou traduction dans un


langage
compréhensible par la machine.

Algorithmique : Analyse + Algorithme

Programmatique : Analyse + Algorithme + Programmation

7
III. Exemple de problème :
Équation du second degré

Exemple de problème : résoudre l’équation : ax2 + bx + c =0

Enoncé du problème : déterminer les solutions de l’équation


 Questions :


 • Quel est le type des deux nombres ? exemple entiers
strictement
positifs
• Quel est le résultat demandé ?
• Y’a-t-il des cas particuliers ?

8
III. Exemple de problème :
division de deux nombres
1. Spécification du problème : les données en entrée a, b et c et
ceux de sorties représentent les solutions possibles x1 et x2
2. Analyse du problème :

 1. Etape 1 : lire les variables a, b et c.



 2. Etape 2 : tester sur les valeurs saisies et déterminer tous les

cas envisageables
i. cas1: a <> 0, b <>0 et c <>0 => calculer delta, x1 et x2
ii. Cas 2: a = 0, b <>0 et c <>0, => 1 seule solution x1 = x2 = -b/c
iii. Cas 3: a <>0, b<>0 et c = 0 => infinité de solution
………………..
3. Etape 3 : Edition des résultats
3. Algorithme : description systématique des étapes de l'analyse,
sous forme d'une suite d 'actions convenablement enchaînées
4. Codification : traduire les actions (ou ensemble des étapes)
dans un langage compréhensible par la machine.
9
IV. Généralisation des étapes de
résolution

Problème sans
1 formulation précise Résultats

Que cherche-t-on Que connaît-on

4
Programme

Enoncé précis du problème


Algorithme

2
Quelles sont
Analyse les valeurs
données
3

10

Vous aimerez peut-être aussi