Formation Algorithme
Valdy Gildas NGOUABIRA
Valdy Gildas NGOUABIRA Ingénieur en Informatique
1
Définition
Un algorithme est la description d'une méthode de
résolution d'un problème.
Valdy Gildas NGOUABIRA Ingénieur en Informatique
2
Structured’un
algorithme
Valdy Gildas NGOUABIRA Ingénieur en Informatique
3
Lestypesde
donnéesde
base
En algorithmique, on a cinq types de base :
- caractère (lettre, chiffre, ponctuation, espace, …);
- chaîne (suite de 0 ou plusieurs caractères) ;
- entier (1, 2,3 …) ;
- réel (les nombres réels positifs ou négatifs) ;
- booléen (deux valeurs possibles: VRAI, FAUX).
Valdy Gildas NGOUABIRA Ingénieur en Informatique
4
Variableet
constante
une variable est une structure de données de type primitif
(entier, réel, caractère, chaîne de caractères, booléen ou
null) ou bien de type structuré (tableau ou objet) qui permet
de stocker une ou plusieurs valeurs. A la différence d’une
variable, la valeur d’une constante ne change pas.
Valdy Gildas NGOUABIRA Ingénieur en Informatique
5
Variableet
constante
Une variable ou une constante est caractérisée par :
- Un identificateur, qui est un nom unique qui permet de la
désigner;
- Un type, qui correspond au type de l'information qu'elle
contient;
- Une valeur, c'est à dire l'information qu'elle contient.
Valdy Gildas NGOUABIRA Ingénieur en Informatique
6
Variableet
constante
On déclare une variable en donnant son identificateur et son type
selon la syntaxe suivante : id_variable : type
Exemple
a : entier
Exemple
x = 5 , y , z : entier
Pour déclarer une constante, on utilise la
syntaxe suivante : id_constante = valeur :type
Exemple
N = 100 : entier
Valdy Gildas NGOUABIRA Ingénieur en Informatique
7
Instructions
d’entrée/sorties
Le point de référence est le programme. Ainsi les informations
d’entrée sont les informations produites à l’extérieur du
programme et qui rentrent dans le programme (saisie clavier
par exemple), les informations de sortie sont élaborées par le
programme et transmises à l’extérieur (l’écran par exemple).
Valdy Gildas NGOUABIRA Ingénieur en Informatique
8
Opération
d’entrée
(Lecture)
Lire(var): lire sur le périphérique d’entrée une valeur et la
ranger dans la variable var. Autre formulation : affecter la
variable var avec une valeur lue au clavier.
Valdy Gildas NGOUABIRA Ingénieur en Informatique
9
Opérationde
sortie(Ecriture)
Écrire(expr) : transférer (afficher, imprimer...) la valeur de
l’expression expr vers le périphérique de sortie.
Valdy Gildas NGOUABIRA Ingénieur en Informatique
10
Affectation
L’affectation permet de modifier la valeur associée à une
variable.
var <- expr
Règle : Le type de expr doit être compatible avec le type de
var.
Valdy Gildas NGOUABIRA Ingénieur en Informatique
11
Lesopérateurs
Opérations Types concernés
Opérations
arithmétiques
Addition +
Les types numériques (entier
et réel) et le type caractère.
Soustraction -
Multiplication *
Division entière div
Modulo mod
Division fractionnaire /
Opérations
logiques
Et logique ET
Le type booléen.
Ou logique OU
Négation NON
Opérations de
comparaison
Inférieur <
Tous les types de base.
Inférieur ou égal ≤
Supérieur >
Supérieur ou égal ≥
Egal = =
Différent ≠
Valdy Gildas NGOUABIRA Ingénieur en Informatique
12
Lesopérateurs
Valdy Gildas NGOUABIRA Ingénieur en Informatique
13
• égal à ( = en pseudo code)
• différent de ( != en pseudo code)
• strictement supérieur ( > en pseudo code)
• strictement inférieur ( < en pseudo code)
• supérieur ou égal ( > = en pseudo code)
• inférieur ou égal ( < = en pseudo code)
Ces comparaisons n'ont un sens que si les variables que
l'on compare sont de même type.
Structure
conditionnelle
Si condition Alors
Instructions
Sinon
Instructions
FinSi
Si condition Alors
Instructions
Sinon Si condition Alors
Instructions
Sinon
Instructions
FinSi
Valdy Gildas NGOUABIRA Ingénieur en Informatique
14
Structure
conditionnelle
Valdy Gildas NGOUABIRA Ingénieur en Informatique
15
Exemple
Programme résultat
VARIABLE
note :REEL
DEBUT
LIRE (note)
SI note ≥ 10
ALORS ECRIRE(‘'Admis'' )
SINON ECRIRE(‘'Ajourné'')
FINSI
FIN
Valdy Gildas NGOUABIRA Ingénieur en Informatique
16
Structure
conditionnelle
La structure SELONQUE permet d'effectuer tel ou tel traitement
en fonction de la valeur des conditions 1ou 2 ou ..n .Syntaxe :
SELONQUE
<condition 1> : <action 1>
<condition 2> : <action 2>
...
<condition n> : <action n>
SINON : <action_sinon>
FINSELONQUE
Valdy Gildas NGOUABIRA Ingénieur en Informatique
17
Exemple
 SELONQUE
 Note ≥ 16 : ECRIRE (‘'TB'')
 Note ≥ 14 : ECRIRE (‘'B'')
 Note ≥ 12 : ECRIRE (‘'AB'')
 Note ≥ 10 : ECRIRE (‘'Passable'')
 SINON : ECRIRE (‘'ajourné'')
 FINSELONQUE
Valdy Gildas NGOUABIRA Ingénieur en Informatique
18
Lesboucles
Syntaxe :
TANTQUE <condition>
FAIRE
<actions>
FINTANTQUE
Ces actions peuvent être
simples ou composées ! !
Valdy Gildas NGOUABIRA Ingénieur en Informatique
19
Syntaxe :
REPETER
<actions simples>
JUSQU'A <condition>
Lesboucles
Valdy Gildas NGOUABIRA Ingénieur en Informatique
20
Exemples
i <- 1
TANTQUE i ≤ 6 FAIRE
i <- i+1
Ecrire(i)
FINTANTQUE
Valdy Gildas NGOUABIRA Ingénieur en Informatique
21
i <- 1
REPETER
i <- i+1
Ecrire(i)
JUSQU'A i ≤ 6
Lestableaux
Un tableau est un ensemble de même type indicé par un ensemble
non vide d'indices, permettant un accès direct à chacun des objets.
Syntaxe:
nom_tableau: TABLEAU[min_indice..max_indice] DE <type_predefini
>; ce qui signifie que les éléments ont pour type le
type_predefiniles indices des éléments vont de min_indice à
max_indice, avec min_indice < max_indice,
NB: on peut déclarer un tableau de N valeurs comme ceci:
nom_tableau: TABLEAU[ N ] DE <type_predefini>
Valdy Gildas NGOUABIRA Ingénieur en Informatique
22
Exemple
Exemple de tableau de 5
entiers :
T:TABLEAU [5] d' ENTIER
Valdy Gildas NGOUABIRA Ingénieur en Informatique
23
•T signifie que c'est un objet de type TABLEAU.
•Les numéros en indices 1, 2, 3, 4, 5 correspondent aux
valeurs colonnes.
•Le contenu de T : les 5 entiers (dans un certain ordre)
•La première valeur est T[1] où 1 correspond donc à l'indice
de la première colonne.
Lesfonctions
une fonction est une portion de code informatique nommée,
qui accomplit une tâche spécifique. Les fonctions reçoivent
généralement des données en entrée et retournent
généralement en sortie le résultat du traitement opéré par
la fonction.
Valdy Gildas NGOUABIRA Ingénieur en Informatique
24
Synthaxe
FONCTION <nom_fonction> ( <liste des
paramètres> ) : <type de résultat>
< déclaration des objets locaux à la fonction>
DEBUT
{ corps de la fonction}
RETOURNER(résultat)
FIN
Valdy Gildas NGOUABIRA Ingénieur en Informatique
25
Exemple
Exemple:
FONCTION perimetre_rectangle (largeur, longueur :
ENTIER) : ENTIER
DEBUT
RETOURNER (2*(largeur+longueur))
FIN
Valdy Gildas NGOUABIRA Ingénieur en Informatique
26

Formation algorithme

  • 1.
    Formation Algorithme Valdy GildasNGOUABIRA Valdy Gildas NGOUABIRA Ingénieur en Informatique 1
  • 2.
    Définition Un algorithme estla description d'une méthode de résolution d'un problème. Valdy Gildas NGOUABIRA Ingénieur en Informatique 2
  • 3.
  • 4.
    Lestypesde donnéesde base En algorithmique, ona cinq types de base : - caractère (lettre, chiffre, ponctuation, espace, …); - chaîne (suite de 0 ou plusieurs caractères) ; - entier (1, 2,3 …) ; - réel (les nombres réels positifs ou négatifs) ; - booléen (deux valeurs possibles: VRAI, FAUX). Valdy Gildas NGOUABIRA Ingénieur en Informatique 4
  • 5.
    Variableet constante une variable estune structure de données de type primitif (entier, réel, caractère, chaîne de caractères, booléen ou null) ou bien de type structuré (tableau ou objet) qui permet de stocker une ou plusieurs valeurs. A la différence d’une variable, la valeur d’une constante ne change pas. Valdy Gildas NGOUABIRA Ingénieur en Informatique 5
  • 6.
    Variableet constante Une variable ouune constante est caractérisée par : - Un identificateur, qui est un nom unique qui permet de la désigner; - Un type, qui correspond au type de l'information qu'elle contient; - Une valeur, c'est à dire l'information qu'elle contient. Valdy Gildas NGOUABIRA Ingénieur en Informatique 6
  • 7.
    Variableet constante On déclare unevariable en donnant son identificateur et son type selon la syntaxe suivante : id_variable : type Exemple a : entier Exemple x = 5 , y , z : entier Pour déclarer une constante, on utilise la syntaxe suivante : id_constante = valeur :type Exemple N = 100 : entier Valdy Gildas NGOUABIRA Ingénieur en Informatique 7
  • 8.
    Instructions d’entrée/sorties Le point deréférence est le programme. Ainsi les informations d’entrée sont les informations produites à l’extérieur du programme et qui rentrent dans le programme (saisie clavier par exemple), les informations de sortie sont élaborées par le programme et transmises à l’extérieur (l’écran par exemple). Valdy Gildas NGOUABIRA Ingénieur en Informatique 8
  • 9.
    Opération d’entrée (Lecture) Lire(var): lire surle périphérique d’entrée une valeur et la ranger dans la variable var. Autre formulation : affecter la variable var avec une valeur lue au clavier. Valdy Gildas NGOUABIRA Ingénieur en Informatique 9
  • 10.
    Opérationde sortie(Ecriture) Écrire(expr) : transférer(afficher, imprimer...) la valeur de l’expression expr vers le périphérique de sortie. Valdy Gildas NGOUABIRA Ingénieur en Informatique 10
  • 11.
    Affectation L’affectation permet demodifier la valeur associée à une variable. var <- expr Règle : Le type de expr doit être compatible avec le type de var. Valdy Gildas NGOUABIRA Ingénieur en Informatique 11
  • 12.
    Lesopérateurs Opérations Types concernés Opérations arithmétiques Addition+ Les types numériques (entier et réel) et le type caractère. Soustraction - Multiplication * Division entière div Modulo mod Division fractionnaire / Opérations logiques Et logique ET Le type booléen. Ou logique OU Négation NON Opérations de comparaison Inférieur < Tous les types de base. Inférieur ou égal ≤ Supérieur > Supérieur ou égal ≥ Egal = = Différent ≠ Valdy Gildas NGOUABIRA Ingénieur en Informatique 12
  • 13.
    Lesopérateurs Valdy Gildas NGOUABIRAIngénieur en Informatique 13 • égal à ( = en pseudo code) • différent de ( != en pseudo code) • strictement supérieur ( > en pseudo code) • strictement inférieur ( < en pseudo code) • supérieur ou égal ( > = en pseudo code) • inférieur ou égal ( < = en pseudo code) Ces comparaisons n'ont un sens que si les variables que l'on compare sont de même type.
  • 14.
    Structure conditionnelle Si condition Alors Instructions Sinon Instructions FinSi Sicondition Alors Instructions Sinon Si condition Alors Instructions Sinon Instructions FinSi Valdy Gildas NGOUABIRA Ingénieur en Informatique 14
  • 15.
  • 16.
    Exemple Programme résultat VARIABLE note :REEL DEBUT LIRE(note) SI note ≥ 10 ALORS ECRIRE(‘'Admis'' ) SINON ECRIRE(‘'Ajourné'') FINSI FIN Valdy Gildas NGOUABIRA Ingénieur en Informatique 16
  • 17.
    Structure conditionnelle La structure SELONQUEpermet d'effectuer tel ou tel traitement en fonction de la valeur des conditions 1ou 2 ou ..n .Syntaxe : SELONQUE <condition 1> : <action 1> <condition 2> : <action 2> ... <condition n> : <action n> SINON : <action_sinon> FINSELONQUE Valdy Gildas NGOUABIRA Ingénieur en Informatique 17
  • 18.
    Exemple  SELONQUE  Note≥ 16 : ECRIRE (‘'TB'')  Note ≥ 14 : ECRIRE (‘'B'')  Note ≥ 12 : ECRIRE (‘'AB'')  Note ≥ 10 : ECRIRE (‘'Passable'')  SINON : ECRIRE (‘'ajourné'')  FINSELONQUE Valdy Gildas NGOUABIRA Ingénieur en Informatique 18
  • 19.
    Lesboucles Syntaxe : TANTQUE <condition> FAIRE <actions> FINTANTQUE Cesactions peuvent être simples ou composées ! ! Valdy Gildas NGOUABIRA Ingénieur en Informatique 19 Syntaxe : REPETER <actions simples> JUSQU'A <condition>
  • 20.
    Lesboucles Valdy Gildas NGOUABIRAIngénieur en Informatique 20
  • 21.
    Exemples i <- 1 TANTQUEi ≤ 6 FAIRE i <- i+1 Ecrire(i) FINTANTQUE Valdy Gildas NGOUABIRA Ingénieur en Informatique 21 i <- 1 REPETER i <- i+1 Ecrire(i) JUSQU'A i ≤ 6
  • 22.
    Lestableaux Un tableau estun ensemble de même type indicé par un ensemble non vide d'indices, permettant un accès direct à chacun des objets. Syntaxe: nom_tableau: TABLEAU[min_indice..max_indice] DE <type_predefini >; ce qui signifie que les éléments ont pour type le type_predefiniles indices des éléments vont de min_indice à max_indice, avec min_indice < max_indice, NB: on peut déclarer un tableau de N valeurs comme ceci: nom_tableau: TABLEAU[ N ] DE <type_predefini> Valdy Gildas NGOUABIRA Ingénieur en Informatique 22
  • 23.
    Exemple Exemple de tableaude 5 entiers : T:TABLEAU [5] d' ENTIER Valdy Gildas NGOUABIRA Ingénieur en Informatique 23 •T signifie que c'est un objet de type TABLEAU. •Les numéros en indices 1, 2, 3, 4, 5 correspondent aux valeurs colonnes. •Le contenu de T : les 5 entiers (dans un certain ordre) •La première valeur est T[1] où 1 correspond donc à l'indice de la première colonne.
  • 24.
    Lesfonctions une fonction estune portion de code informatique nommée, qui accomplit une tâche spécifique. Les fonctions reçoivent généralement des données en entrée et retournent généralement en sortie le résultat du traitement opéré par la fonction. Valdy Gildas NGOUABIRA Ingénieur en Informatique 24
  • 25.
    Synthaxe FONCTION <nom_fonction> (<liste des paramètres> ) : <type de résultat> < déclaration des objets locaux à la fonction> DEBUT { corps de la fonction} RETOURNER(résultat) FIN Valdy Gildas NGOUABIRA Ingénieur en Informatique 25
  • 26.
    Exemple Exemple: FONCTION perimetre_rectangle (largeur,longueur : ENTIER) : ENTIER DEBUT RETOURNER (2*(largeur+longueur)) FIN Valdy Gildas NGOUABIRA Ingénieur en Informatique 26