Algorithmique
Danielle KEPSEU
In'Tech Info SO S1_S2015 1
Algorithme : les synonymes
Selon le domaine d'application, on entend
par algorithme :
• Un processus de fabrication
• Une recette culinaire
• Une procédé médical
• Une méthode comptable
• Un mode d'emploi pour l'assemblage de
pièces
In'Tech Info SO S1_S2015 2
L'algorithme
Un algorithme est composé d'instructions
ordonnées séquentiellement, exécutées les unes
après les autres, modifiant éventuellement l'état
des objets auquel il s'applique.
On peut écrire un algorithme :
Pour résoudre une équation ( x = 2x+2)
Pour calculer la moyenne des éléments d'un tableau
Pour calculer la surface d'un cercle
Pour réaliser la recette d'un gâteau
Pour assembler des meubles …
In'Tech Info SO S1_S2015 3
Recette mini cakes aux pépites
de chocolat
Travailler le beurre, la pincée de sel et le sucre pour
obtenir un mélange onctueux et blanchi
Préchauffer le four à 180°
Ajouter un œuf au mélange, bien travailler, recommencer
pour chaque œuf
Ajouter la farine, les pépites de chocolat et la levure
Bien mélanger
Beurrer les moules et les fariner
Verser la pâte dans les moules jusqu’à mi-hauteur
Faire cuire à four modéré (180°) pendant 15 minutes.
In'Tech Info SO S1_S2015 4
Algorithme en Informatique
En informatique il existe des algorithmes
« génériques » qui sont utilisés fréquemment en
programmation :
Algorithme de tri (sort)
Algorithme de cryptage( RSA)
Algorithme de gestion des listes
…etc.
Il est possible d'écrire des algorithmes pour tout
programme informatique avant de commencer le
codage dans un langage informatique
In'Tech Info SO S1_S2015 5
Exécuter un algorithme
Un algorithme doit être écrit dans un langage
compréhensible par celui qui l’exécute
Le langage peut-être:
textuel (pseudo-code)
Graphique (organigramme)
Ou bien on mélange les 2
L'algorithme est utilisé pour exprimer ses idées
avant de coder dans un langage de
programmation (C, Java, JavaScript)
In'Tech Info SO S1_S2015 6
Organigramme
● Un algorithme graphique est composé de carrés,
rectangles, losanges
● Ce type d'algorithme tend à disparaître car il est
difficile à structurer
a = 12
Non a > 18 Oui
Affiche a
a++
Fin
In'Tech Info SO S1_S2015 7
Pseudo-code
● Le pseudo-code est une suite d'instructions écrites en
langage textuel
● Les instructions sont écrites dans un langage simple
(quasiment courant), en utilisant des concepts simples
(tant que, faire si, jusqu'à ce que ...)
● Exemple : Définir age = 12
Si age > 18 alors
Afficher age
Sinon incrémenter age
In'Tech Info SO S1_S2015 8
De l'algorithme au code
Deux phases principales dans la conception
d'un algorithme
Phase créative:
on rassemble les idées
Phase de transcription:
on exprime de façon précise et concise les
différentes étapes pour aboutir à la solution
Enfin on passe au codage dans un langage
Informatique
In'Tech Info SO S1_S2015 9
Qu'est ce qu'un programme
Un programme ou script ou code est une suite
d'instructions écrites selon une syntaxe et une
sémantique donnée.
Un programme contient des opérations et des
données
Les données sont mémorisées dans la
mémoire sous forme d'octet (groupe de 8 bits);
Un bit (0/1) est la plus petite unité d'information
In'Tech Info SO S1_S2015 10
Les Instructions
Une instruction est une opération élémentaire
exécutée par le processeur
L'instruction est composée du code de
l'opération(op code) et du code des opérandes
Une instruction peut permettre:
De modifier le contenu d'une cellule en mémoire
De lire le contenu d'une mémoire
De transférer des données de la mémoire vers un
périphérique ou du périphérique vers la mémoire
In'Tech Info SO S1_S2015 11
Langage de programmation
Langage machine ou binaire est le langage
interpreté par le processeur
Il existe 3 catégories de langages informatiques
qui peuvent être classés en:
Langages compilés (C, C++):le programme est
traduit une fois pour toutes avant d'être exécuté;
Langages interpretés (PHP, JavaScript): un
interpréteur traduit au fur à mesure le programme;
Langages intermédiaires (Java, Python): une
partie du programme est compilée et une autre
interpreté; In'Tech Info SO S1_S2015 12
Compilation
Le compilateur traduit le code en fichier
exécutable avant le lancement du programme;
Programme écrit en langage C
Fichier exécutable
In'Tech Info SO S1_S2015 13
Interprétation
Le code source est traduit au fur à mesure par
l'interpréteur à chaque fois que le programme est
lancé.
"use strict";
// afficher des nombres de 0 à 10
for(var i = 0; i <=10 ; i++)
{
[Link](i); //affiche le nombre i
}
In'Tech Info SO S1_S2015 14
Liens utiles
• [Link]/thire/
• [Link]
que-pour-l-apprenti-programmeur
• [Link]
algorithmique
In'Tech Info SO S1_S2015 15
Exercices
• Écrire un algorithme permettant de calculer et
d’afficher l'âge d’une personne à partir de sa
date de naissance.
• Écrire un algorithme permettant de compter et
d’afficher le nombre de confiseries (par
marque), présentent dans un distributeur de
confiseries.
• Écrire un algorithme pour créer un carré
magique d’ordre 3, avec S=15
In'Tech Info SO S1_S2015 16