MÉTHODE DE
PROGRAMMATION
1.2 : Algorithmique et programmation
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 1
Ecrire des algorithmes… pour
l’ordinateur
■ Programmer, c’est écrire des algorithmes dans un langage
compris par les ordinateurs
■ Découvrons brièvement comment l’ordinateur fonctionne
pour comprendre comment nous allons expliquer à
l’ordinateur les procédures à suivre pour résoudre un
problème.
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 2
Hardware et Software
■ Hardware: réfère aux composants physiques de l’ordinateur:
– Le CPU (processeur)
– La mémoire centrale
– Les mémoires secondaires
– Les périphériques
(entrées/sorties– Input/Output (I/O) )
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 3
Hardware
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 4
Le CPU
CPU
Unité
logique
et
input arithmétique output
Unité
de contrôle
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 5
Le CPU
■ Le CPU “va chercher” l’instruction suivante (binaire), la
décode, l’exécute, et renouvelle ce cycle avec l’instruction
suivante.
L’unité de contrôle “va chercher”, dans la mémoire centrale,
l’instruction suivante de la séquence d’instructions.
Va
chercher Les instructions sont encodées sous forme de
nombres binaires. L’unité de contrôle décode ces
instructions et génère des signaux électroniques.
Le signal est envoyé sur le composant de
Exécute Décode l’ordinateur correspondant (par ex unité A et L).
Le signal permet au composant d’effectuer
l’opération.
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 6
La mémoire centrale
■ Appelée random-access memory (RAM)
■ La RAM contient:
– Les programmes qui s’exécutent,
– Les données utilisées par ces programmes.
■ La RAM est divisée en unités appelées bytes.
■ Un byte est une suite de 8 bits (0 ou 1).
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 7
La mémoire centrale
■ Une suite de bits représente un caractère, un
nombre, ou même une instruction ou une
adresse:
■ Tout dépend de l’interprétation qu’on donne à
cette suite de bits.
■ A chaque byte en mémoire correspond un
nombre unique (une adresse).
■ La RAM est volatile: chaque fois que l’ordinateur
est éteint, le contenu de la RAM disparaît.
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 8
La mémoire centrale
La mémoire centrale peut être vue comme une colonne de sections
Chaque ligne est identifiée par une adresse
0x000 Une section de la mémoire appelée byte.
0x001 1 0 1 0 1 0 1 0 Un byte contient 8 bits.
0x002
0x003
0x004
0x005 4 bytes forment un mot (32 bits)
0x006
0x007 Ou 64 bits, ça dépend du processeur
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 9
Software
■ Software: réfère aux programmes qui s’exécutent sur
l’ordinateur
■ Il y a deux classes de software
– Operating Systems (système d’exploitation)
– Applications software
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 10
Algorithme et Programme
■ Un algorithme est une suite finie d’étapes bien définies pour
effectuer une tâche ou résoudre un problème. Ces étapes
sont ordonnées de façon séquentielle.
■ Un programme est une suite finie d’instructions qui
permettent à l’ordinateur de résoudre un problème ou
d’effectuer une tâche.
■ Un langage de programmation est un langage utilisé pour
écrire des programmes.
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 11
Le langage de l’ordinateur
■ Concrètement, pour que le CPU puisse exécuter ces
instructions, elles doivent être écrites en langage machine
(suite de chiffres binaires). Le CPU est capable d’interpréter
des suites de chiffres binaires.
■ Chaque CPU a son propre langage machine.
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 12
Les langages de
programmation
■ Avant, les programmeurs écrivaient leurs programmes en
langage machine.
■ Ensuite, les programmeurs ont développé des langages de
programmation de plus haut niveau.
■ Le premier était l’assembleur. (mais toujours dépendant du
processeur)
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 13
Les langages de
programmation
■ Les langages de programmation qui ont suivi
ne sont plus dépendants du processeur.
■ Exemples connus:
– BASIC
– COBOL
– Pascal
– C
– C++
– Java
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 14
Pour communiquer avec
l’ordinateur?
■ 4 éléments
– L’affectation de variables
– La lecture / écriture
– Les expressions
– Les structures de contrôle ( séquence, conditionnelle,
répétitive)
■ Un algorithme informatique se ramène donc toujours au bout
du compte à la combinaison de ces quatre petites briques de
base.
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 15
Algorithmique et
programmation
■ Pourquoi apprendre l’algorithmique pour apprendre à
programmer ? En quoi a-t-on besoin d’un langage spécial,
distinct des langages de programmation compréhensibles par
les ordinateurs ?
■ Car l’algorithmique exprime les instructions résolvant un
problème donné indépendamment des particularités de tel
ou tel langage.
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 16
Algorithmique et
programmation
■ Apprendre l’algorithmique, c’est apprendre à manier la
structure logique d’un programme informatique.
■ Apprendre l’algorithmique de manière séparée, c’est enlever
les difficultés spécifiques au langage pour mieux les vaincre.
■ Pour travailler l’algorithmique sans les contraintes d’un
langage de programmation, on peut
– Utiliser des organigrammes
– Utiliser un pseudo-code
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 17
Organigramme
■ Un organigramme de programmation (logigramme) est une
représentation graphique normalisée de l'enchaînement des
opérations et des décisions effectuées par un programme
d'ordinateur.
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 18
Organigramme
séquence alternative
1
Traitement2
DEBUT Si « condition » ALORS
« Traitement 1 » « Traitement1 »
« Traitement 2 »
SINON
FIN
« Traitement2 »
FINSI
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 19
Organigramme
Répétitive (tant que) Répétitive(jusqu’à)
Faux
Vrai
TANTQUE « Condition » REPETER JUSQUA « Condition » REPETER
« Traitement » « Traitement »
FINTANTQUE FINJUSQUE
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 20
Organigramme
Répétitive (tant que) Répétitive(jusqu’à)
vra
Vrai
i
Faux
REPETER REPETER
« traitement » « traitement »
TANTQUE « Condition » JUSQUE « Condition »
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 21
Pseudocode
■ Le pseudocode ressemble à un langage de programmation
authentique dont on aurait évacué la plupart des problèmes
liés aux langages de programmation (syntaxe spécifique,
sémantique trop souple ou trop contraignante, etc).
■ Le pseudocode est purement conventionnel ; aucune
machine n’est censée le reconnaître.
■ Une fois qu’il est défini, il doit être respecté…
18/09/2024 Méthode de programmation Dony Isabelle année 2024-2025 22