Vous êtes sur la page 1sur 201

Ecole Nationale Polytechnique – Malek Bennabi - Constantine

Département Classe Préparatoire


Info1 : UEM11

INTRODUCTION À L’INFORMATIQUE

Dr. Mohamed Hachem Kermani


hachem.kermani@univ-constantine2.dz
1
2020/2021
Organisation du module
• Intervenant de cours:
Dr. Mohamed Hachem Kermani
hachem.kermani@univ-constantin2.dz
Bureau : 411 - 4ème étage

• Emploi du temps:
• Un cours chaque semaine ~ 50 % du volume horaire.
• Séances TD et séances TP alternées.

• Évaluations:
• Note TD (25 %: une interrogation de 45 minutes).
• Note TP (25 %: contrôle TP à la fin du semestre).
• Examen final (50%, durée: 1h30, à la fin du semestre).

2
Contrat
• Assiduité durant le cours et le TD.

• Révision du cours pour une meilleure compréhension du TD.

• Respect mutuel entre l’enseignant et les étudiants.

• Non utilisation de téléphones portables durant le cours quelque soit la


raison.

• Absence non justifié durant le cour ou le TD trois fois exclusion.

• Cours disponible à chaque mise à jour dans le site de l’école.

3
Objectifs du module
• Comprendre le fonctionnement d’un ordinateur.

• Initiation à la bureautique.

• Savoir écrire un algorithme (Un programme).

• Préparation à la programmation et à la
simulation(à partir du cycle ingénieur).
4
Plan
 Chapitre 1 : L’ordinateur au cœur de l’informatique

 Chapitre 2 : Initiation à la bureautique

 Chapitre 3 : Représentation des nombres

 Chapitre 4 : Algèbre de Boole

 Chapitre 5 : Introduction à l’algorithmique

5
Chapitre 1 : l’ordinateur au
cœur de l’informatique

6
L’ordinateur au cœur de
l’informatique
• Notion d’informatique

• Notion d’ordinateur

• Types d’ordinateurs

• Composants matériels d’un ordinateur

• Composants logiciels d’un ordinateur

7
L’ordinateur au cœur de
l’informatique
Notion d’informatique

L’informatique ? 8
L’ordinateur au cœur de
l’informatique
Notion d’informatique

Informatique

Information + auto matique

Science de traitement automatique des


informations.

9
L’ordinateur au cœur de
l’informatique
Notion d’informatique

• Science qui regroupe l’ensemble des théories Théories


et des techniques
permettant de traiter l’information à l’aide d’un
Techniques Lesordinateur.
données[1]:

Textes
Mail
Photos / Vidéos
Photos
&Fichiers / Mail
Conversation
Vidéos
Tchat
Fichiers /&Programmes
Programmes
Hardware & Software 10
L’ordinateur au cœur de
l’informatique
Notion d’ordinateur

Technique Théories
s

Données

11
L’ordinateur au cœur de
l’informatique
Notion d’ordinateur

Un ordinateur est un système de traitement de l'information


programmable et qui fonctionne par la lecture séquentielle d'un
ensemble d'instructions, organisées en programmes, qui lui font
exécuter des opérations logiques et arithmétiques. [Alain
Turing]

Alain Turing
Mathématicien
1912 - 1954
12
L’ordinateur au cœur de
l’informatique
Notion d’ordinateur

La machine de Turing
13
L’ordinateur au cœur de
l’informatique
Notion d’ordinateur

Enigma Machine de Turing

1939 - 1945
14
L’ordinateur au cœur de
l’informatique
Notion d’ordinateur

Machine de Turing Univac IBM, Apple

1943 1951 1980 Nos jours


15
L’ordinateur au cœur de
l’informatique
Types d’ordinateurs
Ordinateur de types
Plusieurs bureau
d’ordinateurs existe selon :
Desktop Serveurs

• Domaine d’utilisation (personnel, professionnel,


Un serveur
familiale, …).est un dispositif
informatique (matériel et logiciel)
•qui offre des (vitesse
Performances servicesdeàtraitement,
un ou capacité de stockage,
plusieurs clients. …).
qualité graphique,

• Taille (ordinateur de poche, pc portable, PC de bureau,


Portable / Laptop
serveur, …). Tablettes Smartphones

16
L’ordinateur au cœur de
l’informatique
Types d’ordinateurs
Internet ?
International Network

Réseau

17
L’ordinateur au cœur de
l’informatique
Composants matériels d’un ordinateur
Architecture de Von Neuman
Un ordinateur possèdes des composants principaux
et est muni de périphériques d’entrée et de sortie
(intégré ou externe) comme par exemple : souris,
clavier, etc.

18
L’ordinateur au cœur de
l’informatique
Composants matériels d’un ordinateur

Processeur Connecteurs
de RAM

Connecteurs Carte Mère


entrées/sorties
VGA, USB,
Audio, HDMI

19
L’ordinateur au cœur de
l’informatique
Composants matériels d’un ordinateur

Le processeur (CPU : control processing unit), est le


cerveau d’un ordinateur.

• Commande les différentes composantes de


l’ordinateur et exécute des opérations de calculs.

• La vitesse du processeur est calculée en nombre


d’impulsions par seconde (hertz).

• Plusieurs fabriquant de processeurs : Intel, AMD, …

20
L’ordinateur au cœur de
l’informatique
Composants matériels d’un ordinateur

Mémoire centrale : comporte les données et les programmes en


cours d’exécution durant le fonctionnement de l’ordinateur.

• La RAM (random acess memory) est une mémoire volatile. Les


données et les programmes sont perdus dans le cas où l’ordinateur
est redémarré ou éteint.

• La ROM (read only memory) est une mémoire morte à lecture


seule. Les informations du lancement d’un ordinateur ainsi que le
bios sont stockés dedans.

21
L’ordinateur au cœur de
l’informatique
Composants logiciels d’un ordinateur

• Système BIOS (Basic Input Output System) , gère les paramètres


de l’ordinateur.

22
L’ordinateur au cœur de
l’informatique
Composants logiciels d’un ordinateur

• Système d’exploitation : gère à la fois le matériel mais


également les applications et les données.

23
L’ordinateur au cœur de
l’informatique
Composants logiciels d’un ordinateur

• Les applications utilisées par l’utilisateur tels que:

24
L’ordinateur au cœur de
l’informatique
Composants logiciels d’un ordinateur

• Les applications utilitaires tels que : les antivirus

25
Chapitre 2 : Initiation à la
Bureautique

26
Initiation à la bureautique

• Notion de bureautique

• Microsoft Word

• Microsoft Excel

• Microsoft Powerpoint

27
Initiation à la bureautique
Notion de bureautique

• La bureautique est l'ensemble des techniques et des logiciels


permettant d’automatiser les activités de bureau.

• Des techniques et des logiciels (Suites) de :

 un traitement de texte.
 un tableur.
 un outil de présentation.
 une base de données.
 un agenda. 28
Initiation à la bureautique
Notion de bureautique

• Les principales suites sont :

 Microsoft Office

 IWork (Apple)

 Google Docs

29
Initiation à la bureautique
Notion de bureautique

Word Excel Powerpoint 30


Initiation à la bureautique
Microsoft Word

• C’est un logiciel de traitement de texte.

• Avec Word, vous avez la possibilité de réaliser tous types de


documents professionnels ou privés contenant:
• Texte
• Tableaux
• Dessins

31
Initiation à la bureautique
Microsoft Word Barre de menu

Curseur Barre d’outils

Règle

32
Initiation à la bureautique
Microsoft Word
Editeur d’équations

Permet d’écrire les équations mathématiques

33
Initiation à la bureautique
Microsoft Word
Editeur d’équations

Insérer une équation prédéfinie

34
Initiation à la bureautique
Microsoft Word
Editeur d’équations

Insérer un symbole Insérer une structure

−𝒃 ± √ 𝒃𝟐 − 𝟒 𝒂𝒄
𝒙=
𝟐𝒂

35
Initiation à la bureautique
Microsoft Word
Editeur de tableaux

Permet de créer des tableaux

36
Initiation à la bureautique
Microsoft Word
Editeur de tableaux

Colonnes

Lignes

37
Initiation à la bureautique
Microsoft Word
Editeur de tableaux

38
Initiation à la bureautique
Microsoft Word
Editeur de tableaux

Rassembler plusieurs cellules en une seule

39
Initiation à la bureautique
Microsoft Word
Editeur de tableaux

Décomposer une cellule en plusieurs

40
Initiation à la bureautique
Microsoft Excel

• C’est un logiciel permettant la réalisation et l’analyse des


calcules.

• Un tableur permettant de réaliser :


• Tableaux de données
• Calcules complexes
• Graphiques

41
Initiation à la bureautique
Microsoft Excel
Barre de menu

Cellule active Barre d’outils

42
Initiation à la bureautique
Microsoft Excel

Cellule active Colonnes

Lignes

43
Initiation à la bureautique
Microsoft Excel

44
Initiation à la bureautique
Microsoft Excel

45
Initiation à la bureautique
Microsoft Powerpoint

• C’est un logiciel permettant la réalisation des présentations.

• Avec Powerpoint, vous avez la possibilité de réaliser tous types de


présentations contenant:
• Textes
• images
• Graphiques

46
Initiation à la bureautique
Barre de menu
Microsoft Powerpoint

Barre d’outils

Diapositives

47
Initiation à la bureautique
Microsoft Powerpoint

48
Initiation à la bureautique
Microsoft Powerpoint
Insertion d’un graphique

49
Initiation à la bureautique
Microsoft Powerpoint

50
Initiation à la bureautique
Microsoft Powerpoint

51
Initiation à la bureautique
Microsoft Powerpoint
Gestion des animations

52
Initiation à la bureautique
Microsoft Powerpoint

53
Initiation à la bureautique
Microsoft Powerpoint
Mode diaporama

54
Initiation à la bureautique
Microsoft Powerpoint
Mode diaporama

55
Chapitre 3 : Représentation
des nombres

56
Représentation des
nombres
• Codage d’information

• Systèmes de numérotation

• Méthodes de conversion

• Opérations arithmétiques

• Codage des nombres

57
Représentation des
nombres
Codage d’information

Des sorties : Les entrées :


Textes
Photos
Vidéos
Conversation
Mail
Fichiers
Programmes

58
Représentation des
nombres
Codage d’information
Dans un ordinateur, les informations sont représentées sous forme
binaire: une suite de 0 et de 1 (00110101)
• L’unité de base pour représenter les données : Bit
• Un bit peut prendre les valeurs: 0 ou 1 -----> Système binaire
• Unités de stockage de l’information:
Octet = Byte = 8 bits
Kilo Octet (Ko) = 1 024 octets = 2^10 octets
Mega Octet (Mo) = 1 048 576 octets = 2^20 octets
Giga Octet (Go) = 1 073 741 824 octets = 2^30 octets
Tera Octet (To) = 1 099 511 627 776 octets = 2^40 octets

59
Représentation des
nombres
Systèmes de numérotation

• Système de numération décrit la façon avec laquelle les nombres sont


représentés.

Un système de numération est défini par :

• Un alphabet A : ensemble de symboles ou chiffres.


• Des règles d’écritures des nombres : Juxtaposition de symboles.

• Exemples de systèmes de numérotation: Romain, Décimal, binaire,


octal, hexadécimal, …

60
Représentation des
nombres
Systèmes de numérotation
Numérotation romaine

61
Représentation des
nombres
Systèmes de numérotation

Numérotation décimale

• A = {0,1,2,3,4,5,6,7,8,9}

• Le nombre 10 est la base de cette numération.

• C’est un système positionnel. Chaque position possède un poids.

• Par exemple: le nombre 4134 s’écrit comme :


4134 = 4 x 10^3 + 1 x 10^2 + 3 x 10^1 + 4 x 10^0

62
Représentation des
nombres
Systèmes de numérotation
Numérotation binaire

• A = {0,1}

• Le nombre 2 est la base de cette numération.

• C’est un système utilisé dans l’ordinateur.

• Par exemple: le nombre 20 en décimal s’écrit en binaire comme :


10010

63
Représentation des
nombres
Systèmes de numérotation
Numérotation octale

• A = {0,1,2,3,4,5,6,7}

• Le nombre 8 est la base de cette numération.

• C’est un système utilisé dans l’ordinateur.

• Par exemple: le nombre 20 en décimal s’écrit en octale comme : 24

64
Représentation des
nombres
Système de numérotation
Numérotation hexadécimale

• A = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}

• Le nombre 16 est la base de cette numération.

• C’est un système utilisé en micro-informatique.

• Par exemple: le nombre 20 en décimal s’écrit en Hexadécimale


comme : 14

65
Représentation des
nombres
Méthodes de conversion
Deux principales méthodes:
1. Divisions Successives (division euclidienne):
• Diviser le nombre par la base b
• Diviser le quotient obtenu, après chaque
division, par la base b; jusqu’à ce que le
quotient devient nul
• La nouvelle représentation dans la base b est la
suite des restes de toutes les divisions effectuées
66
Représentation des
nombres
Méthodes de conversion

Nombre Base

Reste Quotient Base

Reste Quotient Base

Reste Quotient = 0

67
Représentation des
nombres
Méthodes de conversion
Exemple
Exemple: :(12)
(12)1010==(1100)
(???)22

12 2

0 6 2

0 3 2

1 1 2

1 0
68
Représentation des
nombres
Méthodes de conversion
Exemple
Exemple: :(12)
(12)1010==(14)
(???)
8 8

12 8

4 1 8

1 0

69
Représentation des
nombres
Méthodes de conversion
Exemple
Exemple: (12)
: (12) ==(C)
10 10 (???)
16 16

12 16

12 0

0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
A B C D E F 70
Représentation des
nombres
Méthodes de conversion
Exemple
Exemple: (32)
: (32) ==(20)
10 10 (???)
16 16

32 16

0 2 16

2 0

71
Représentation des
nombres
Méthodes de conversion

Décimale (10) Binaire (2), Octale (8),


Hexadécimale (16)

Divisions Successives (division euclidienne)

72
Représentation des
nombres
Méthodes de conversion

Binaire (2), Octale (8)


Décimale (10)
Hexadécimale (16)

méthode du polynôme (équation)

73
Représentation des
nombres
Méthodes de conversion
méthode du polynôme (équation)

Binaire (2) Décimale (10)

0101 22 = (5)
(0101) (???)
10 10

0 1 01 = * 2^0 + * 2^1 + * 2^2 + * 2^3 =5


= = = =
1 + 0 + 4 + 0 74
Représentation des
nombres
Méthodes de conversion
méthode du polynôme (équation)

Octale (8) Décimale (10)

(0211)
0211 88 = (137)
(???)10
10

0 211 = * 8^0 + * 8^1 + * 8^2 + * 8^3 = 137


= = = =
1 + 8 + 128 + 0 75
Représentation des
nombres
Méthodes de conversion
méthode du polynôme (équation)

Hexadécimale (16) Décimale (10)

0A11 16 = (???)
(0A11) (2577)10 10

0 A11 = * 16^0 + * 16^1 + * 16^2 + * 16^3 = 2577


= = = =
1 + 16 + 10*256 + 0 76
Représentation des
nombres
Méthodes de conversion
Cas particulier

Binaire (2) Octale (8), Hexadécimale (16)

(0101)2 = (???)8

77
Représentation des
nombres
Méthodes de conversion
Cas particulier
Octale Binaire
0 0 0 0
1 0 0 1
(0101)22 == (05)
(0101) (???)8 8
2 0 1 0
00 0 101 3 0 1 1
4 1 0 0
5 1 0 1
0 5
6 1 1 0
7 1 1 1
78
Représentation des
nombres
Méthodes de conversion
Cas particulier
Octale Binaire
0 0 0 0
1 0 0 1
(05)88 == (???)
(000101)
2 2
2 0 1 0
05 3 0 1 1
4 1 0 0
5 1 0 1
000101
6 1 1 0
7 1 1 1
79
Représentation des
nombres
Méthodes de conversion
Cas particulier

(11101)2 = (??)
(1D)1616

0001 1101

1 D

80
Représentation des
nombres
Méthodes de conversion
Cas particulier – Nombres réels
Exemple : (12,12)
Exemple 10 = (1100,1100)
: (12,12) 10 = (???)22

12 2

0 6 2

0 3 2

1 1 2

1 0
81
Représentation des
nombres
Méthodes de conversion
Cas particulier – Nombres réels

(0101,0101)
0101,0101 2 = (???)
(5.31)1010

01 0 1 5
0 1 01 = * 2^0 + * 2^1 + * 2^2 + * 2^3
+ * 2^-1 + * 2^-2+ * 2^-3+ * 2^-4
0.25 0.06 82
Représentation des
nombres
Opérations arithmétiques

L’addition La soustraction La multiplication


+ - *
Binaire, Octale, Hexadécimale

83
Représentation des
nombres
Opérations arithmétiques
L’addition en binaire
Décimale Binaire
1 11
19 101 (5)10
+ 2 + 011 (3)10
21 10 00 (8)10
(2)10 = (10) 2

84
Représentation des
nombres
Opérations arithmétiques
L’addition en octale
Décimale Octale
1 1
19 165 (117)10
+ 2 + 51 (41)10
21 2 3 6 (158)10
(11)10 = (13)
8

85
Représentation des
nombres
Opérations arithmétiques
L’addition en hexadécimale
Décimale Hexadécimale
1 1
19 188 (392)10
+ 2 + 81 (129)10
21 2 0 9 (521)10
(16)10 = (10)16

86
Représentation des
nombres
Opérations arithmétiques
La soustraction en binaire
Décimale Binaire
=2
1 =10 1
12 + 101 (5)10
1= 1
-1= 19 - 011 (3)10
3 0 10 (2)10

87
Représentation des
nombres
Opérations arithmétiques
La soustraction en octale
Décimale Octale
=8
1 =10 1
12 + 125 (85)10
1= 1
-1= 19 - 074 (60)10
3 0 31 (25)10

88
Représentation des
nombres
Opérations arithmétiques
La soustraction en Hexadécimale
Décimale Hexadécimale
=16
1 =10 1 1
12 + 136 (310)10
1= 1
-1= 19 - 044 (68)10
3 1F52 (242)10

89
Représentation des
nombres
Opérations arithmétiques
La multiplication en binaire
Décimale Binaire
+1
19 101 (5)10
* 22 * 11 (3)10
1 38 10 1
+ 38 . + 101 .
418 1 1 1 1 (15)10
90
Représentation des
nombres
Opérations arithmétiques
La multiplication en octale
Décimale Octale
1
+1 +
19 16 (14)10
* 22 * 12 (10)10
1 38 1 34
+ 38 . (12)
(9)1010== (11)
(14) 8 + 16 .
8

418 2 1 4 (140)10
91
Représentation des
nombres
Opérations arithmétiques
La multiplication en hexadécimale
Décimale Hexadécimale
1
+1 +
19 17 (23)10
* 22 * 13 (19)10
1 38 45
+ 38 . (21)10 = (B)
(11) (15)1616 + 17 .
418 1B5 (437)10
92
Représentation des
nombres
Codages des nombres

48 bits
(5)10 = (101)2
n=4
n=8
[0, (2^4)-1]
(2^8)-1] 101 Bits ?
[0, 255]
15]1010 00101 Bits ≤
435 Bits

L’Etendu= intervalle
Compléter de représentation
par des: 0 sur n bits
[0, (2^n)-1] 93
Représentation des
nombres
Codages des nombres
Entiers relatifs
Un entier relatif est un nombre naturel auquel on adjoint un
signe positif ou négatif indiquant sa position par rapport à 0.
• Exemple : 5 +5 -5
Il existe au moins trois façons pour coder les entiers relatifs :
• code binaire signé (par signe et valeur absolue)
• code complément à 1
• code complément à 2 (Utilisé sur ordinateur)
94
Représentation des
nombres
Codages des nombres
Entiers relatifs – Binaire signé
1 : - (négatif)
(5)1010 = (1101)bs
(-5) = (101)2 Binaire pur≤
4 bits
4 bits
0 : + (positif)
(-5)10(-5) 10 = (1101)2 Binaire signé
= (10000101)bs 8 bits
(+5)10 = (0101)2 Binaire signé
Etendu de codage:
(-5)10 =[-(2^n-1)-1,
(1000000000000101)bs
+(2^n-1)-1] 16 bits

4 bits n=4
[-(2^4-1)-1, +(2^4-1)-1] [-7, +7] 95
Représentation des
nombres
Codages des nombres
Entiers relatifs – Complément à 1
• Les nombres positifs sont codés de la même façon
qu’en binaire signé.
(+5)10 = (0101)bs = (0101) cà1
• Un nombre négatif est codé en inversant chaque
bit de la représentation de sa valeur absolue
(-5)10 = (1101)bs
1010
(1101)bs
( )cà1 96
Représentation des
nombres
Codages des nombres
Entiers relatifs – Complément à 2
• Les nombres positifs sont codés de la même façon qu’en
binaire signé.
(+5)10 = (0101)bs = (0101) cà1 = (0101) cà2
• Un nombre négatif est codé en ajoutant la valeur :1 à son
complément à 1
(-5)10 = (1101)bs
Cà2 Etendu du codage (1010)cà1
[-(2^n)-1, +(2^n-1)-1] + 1
( 1 0 1 1 )cà2 97
Représentation des
nombres
Codages des nombres
Entiers relatifs – Etendu du codage

• Binaire pur : [0, (2^n)-1]

 4 bits : [0, 15]


 8 bits : [0, 255]
 16 bits : [0, 65535]

98
Représentation des
nombres
Codages des nombres
Entiers relatifs – Etendu du codage

• Binaire signé + Cà1 : [-(2^n-1)-1, +(2^n-1)-1]

 4 bits : [-7, +7]


 8 bits : [-127, +127]
 16 bits : [-32767, +32767]

99
Représentation des
nombres
Codages des nombres
Entiers relatifs – Etendu du codage

• Cà2: [-(2^n)-1, +(2^n-1)-1]

 4 bits : [-15, +7]


 8 bits : [-255, +127]
 16 bits : [-65535, +32767]
100
Chapitre 4 : Algèbre de
Boole

101
Algèbre de Boole
• Introduction

• Les variables et les fonctions logiques

• Les propriétés

• Les opérateurs de bases et les portes logiques

• Représentation des fonctions logiques

102
Algèbre de Boole
Introduction
L'algèbre de Boole, ou calcul booléen, est
la partie des mathématiques qui
s'intéresse à une approche algébrique de
la logique, vue en termes de variables,
d'opérateurs et de fonctions sur les
variables logiques.

L'algèbre de Boole trouve de nombreuses


applications en informatique et dans la George Boole
conception des circuits électroniques. 1815 – 1864
Mathématicien
103
Algèbre de Boole
Les variables et les fonctions logiques
Une variable logique (booléenne) est une variable qui peut
prendre soit la valeur Vrai ou Faux : 0 ou 1

01
Faux
Vrai

A 104
Algèbre de Boole
Les variables et les fonctions logiques

Exemple: la variable X représente état du verre,


remplit ou vide

X=1 verre remplit

X=0 verre vide

X 105
Algèbre de Boole
Les variables et les fonctions logiques

• Une fonction logique est une variable logique dont


la valeur (0 ou 1) dépend d’autres variables logiques
qui sont reliées à l’aide d’opérateurs logiques.

• Il existe trois opérateurs logiques de base: NON, ET,


OU et d’autres qui peuvent aussi être utilisés pour
optimiser les circuits logiques : XOR, NAND, NOR,
XNOR, …
106
Algèbre de Boole
Les variables et les fonctions logiques

• Une fonction logique est une variable logique


dont la valeur (0 ou 1) dépend d’autres
variables logiques qui sont reliées à l’aide
d’opérateurs logiques.
F = A+ B Opérateurs logiques:
Et (And) .
Ou (Or) +
107
Algèbre de Boole
Les variables et les fonctions logiques

F = 1 Vrai ? F = A + B F = 0 Faux ?
A B F=A+B
0 0 0 0 0
0 1 1 1
1
1 0 1
Nombre de possibilité =
1 1 1
108
Algèbre de Boole
Les variables et les fonctions logiques
Opérateurs logiques
Et (And) .
A B A.B
0 0 0 Elle n’est vraie
0 1 0 que si les deux
variables sont
1 0 0
vraies
1 1 1 109
Algèbre de Boole
Les variables et les fonctions logiques
Opérateurs logiques
Ou (OR) +
A B A+B
0 0 0 Elle n’est fausse
0 1 1 que si les deux
variables sont
1 0 1
fausses
1 1 1 110
Algèbre de Boole
Les variables et les fonctions logiques
Opérateurs logiques
Non Ā
A Ā
0 1
1 0

111
Algèbre de Boole
Les variables et les fonctions logiques
Opérateurs logiques
Ou exclusif (XOR) ⨁
A B A⨁B
la fonction est
0 0 0
vraie quand A
0 1 1 et B sont dans
1 0 1 des états
exclusifs
1 1 0 112
Algèbre de Boole
Les variables et les fonctions logiques
Opérateurs logiques
NAND (Non et) A↑B
A B =
Elle est fausse 0 0 1
seulement
quand A et B 0 1 1
sont vrais 1 0 1
1 1 0 113
Algèbre de Boole
Les variables et les fonctions logiques
Opérateurs logiques
NOR (Non ou) A↓B
A B
Elle n’est vraie 0 0 1
que si A et B
sont faux 0 1 0
1 0 0
1 1 0 114
Algèbre de Boole
Les propriétés

1. = A A 0 A+0
2. A + 0 = A
0 10 0 0
=0
1 0 1 1

115
Algèbre de Boole
Les propriétés

1. = A A 1 A+1
2. A + 0 = A
0 1 1
3. A + 1 = 1 1 1 = 1

116
Algèbre de Boole
Les propriétés

1. =A A A A+A
2. A+0=A
0 0 0
3. A + 1 = 1 1 1= 1
4. A+A=A

117
Algèbre de Boole
Les propriétés

1. =A A +A
2. A+0=A 1
0 1
3. A+1=1 1 0 1
4. A+A=A
5. +A=1

118
Algèbre de Boole
Les propriétés

6. A.0 = 0 A.0
A 0
0 0 0
1 0 0

119
Algèbre de Boole
Les propriétés

6. A.0 = 0 A 1 A.1
7. A.1 = A
0 1 0
=
1 1 1

120
Algèbre de Boole
Les propriétés

6. A.0 = 0 A A A.A
7. A.1 = A
0 0 0
8. A.A = A =
1 1 1

121
Algèbre de Boole
Les propriétés

6. A.0 = 0 .A
A
7. A.1 = A 1
0 0
8. A.A = A 0
1 0
9. .A = 0

122
Algèbre de Boole
Les propriétés - Commutativité

A+B= B+A
A.B = B.A
A B A+B B+A
0 0 0 0
0 1 1 = 1
1 0 1 1
1 1 1 1 123
Algèbre de Boole
Les propriétés - Commutativité

A+B= B+A
A.B = B.A
A B A.B B .A
0 0 0 0
0 1 0 = 0
1 0 0 0
1 1 1 1 124
Algèbre de Boole
Les propriétés - Distributivité
A.(B + C) = A.B + A.C
A + (B.C) = (A+B).(A+C)
A B C B+C A. (B + C) A.B A.C A.B + A.C
0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0
0 1 0 1 0 0 0 0
0 1 1 1 0 0 0 0
1 0 0 0 0 0 0 0
1 0 1 1 1 0 1 1
1 1 0 1 1 1 0 1
1 1 1 1 1 1 1 1 125
Algèbre de Boole
Les propriétés - Distributivité
A.(B + C) = A.B + A.C
A + (B.C) = (A+B).(A+C)
A B C B.C A + (B . C) A+B A+C (A+B) . (A+C)
0 0 0 0 0 0 0 0
0 0 1 0 0 0 1 0
0 1 0 0 0 1 0 0
0 1 1 1 1 1 1 1
1 0 0 0 1 1 1 1
1 0 1 0 1 1 1 1
1 1 0 0 1 1 1 1
1 1 1 1 1 1 1 1 126
Algèbre de Boole
Les propriétés - Associativité

 A .(B.C) = (A.B). C

 A + (B + C) = (A + B) + C

127
Algèbre de Boole
Les propriétés
Lois d’absorption
A + (A.B) = (A+A) . (A+B) = A.(A+B) = A.A + A.B
= A + A.B
A + (A.B) = A = A.(1+B)
= A.1
73 48 = A
Distributivité
Propriété
Distributivité
Propriété
Propriété
Propriété
A +A.(B+C)
(B.C)
A.1
A+1
A+A===(A+B).(A+C)
A.A A==
A.B
1 AA + A.C
128
Algèbre de Boole
Les propriétés
Lois d’absorption
A .(A+B) = (A.A) + (A.B) = A +(A.B) = A.(1+B)
= A.1
A .(A+B) = A =A

Lois d’absorption
1. A + (A.B) = A
2. A .(A+B) = A
129
Algèbre de Boole
Les propriétés
Propriété 10

A .(+B) = (A.) + (A.B) = 0 +(A.B) = A.B

Distributivité
Propriété 9
A.(B + C)
A.==A.B
0 + A.C

130
Algèbre de Boole
Les propriétés
Propriété 11

A+(B) = (A+) . (A+B) = 1 . (A+B) = A+B

Distributivité
Propriété 5
A + (B.C)A+
= (A+B).(A+C)
=1

131
Algèbre de Boole
Les propriétés
Théorème de Morgan

 =.

 =

132
Algèbre de Boole
Les portes logiques

• Une porte logique est un composant


électronique élémentaire qui permet de réaliser
une fonction booléenne.
A
B
C A
C
B

A 𝑨
133
Algèbre de Boole
Les portes logiques

A A.B A A+B
B B

A A 𝐀+𝐁
𝐀 .𝐁
B B

134
Algèbre de Boole
Les portes logiques

A A⨁ B
B

135
Algèbre de Boole
Les portes logiques
A A.B A A+B
A A
B B

A A 𝐀+𝐁
A 𝐀 𝐀.𝐁
B B

A A⨁B
B
136
Algèbre de Boole
Les portes logiques - Logigrammes

• Un logigramme est un schéma électronique


composé de portes logiques pour exprimer une
fonction logique. [Ref]

137
Algèbre de Boole
Les portes logiques - Logigrammes

𝑓 ( 𝐴, 𝐵 , 𝐶 )=( 𝐴 . 𝐵 ) +( 𝐴+𝐶 )

A A.
𝑓
B
A+C
C
138
Algèbre de Boole
Représentation des fonctions logiques

• Deux formes de fonctions:


• Somme canonique
Y.Z + X..Z + X.Y. + X.Y.Z

• Produit canonique
+Y+Z . X++Z . X+Y+ . X+Y+Z
139
Algèbre de Boole
Représentation des fonctions logiques
• Somme canonique
Y.Z + X..Z + X.Y. + X.Y.Z
X Y Z Y.Z X..Z X.Y. X.Y.Z
0 0 0 1 1 1 0 0 0 0 0
0 0 1 1 1 0 0 0 0 0 0
0 1 0 1 0 1 0 0 0 0 0
0 1 1 1 0 0 1 0 0 0 1
1 0 0 0 1 1 0 0 0 0 0
1 0 1 0 1 0 0 1 0 0 1
1 1 0 0 0 1 0 0 1 0 1
1 1 1 0 0 0 0 0 0 1 1
Algèbre de Boole
Représentation des fonctions logiques
• Produit canonique
+Y+Z . X++Z . X+Y+ . X+Y+Z
X Y Z +Y+Z X++Z X+Y+ X+Y+Z
0 0 0 1 1 1 1 1 1 0 0
0 0 1 1 1 0 1 1 0 1 0
0 1 0 1 0 1 1 0 1 1 0
0 1 1 1 0 0 1 1 1 1 1
1 0 0 0 1 1 0 1 1 1 0
1 0 1 0 1 0 1 1 1 1 1
1 1 0 0 0 1 1 1 1 1 1
1 1 1 0 0 0 1 1 1 1 1
Algèbre de Boole
Représentation des fonctions logiques
Somme canonique X Y Z Produit canonique
(Somme de produit) 0 0 0 0 (Produit de somme)
0 0 1 0
On fait la somme des On fait la somme des
0 1 0 0
variables pour =1 variables pour = 0 pour
0 1 1 1
obtenir
= 𝐗.Y.Z + X . .Z 1 0 0 0
+ X.Y. + X.Y.Z 1 0 1 1 = +
1 1 0 1 + +X
1 1 1 1 = = X+Y+Z . X+Y+
Propriété 1 . X++Z . +Y+Z
=A 142
Algèbre de Boole
Représentation des fonctions logiques
Simplification des fonctions logiques

• Afin d’optimiser les coûts et la réalisation des circuits


logiques, nous avons généralement recours à deux
méthodes pour simplifier les fonctions logiques :

• La méthode algébrique

• La méthode de karnaugh
143
Algèbre de Boole
Représentation des fonctions logiques
Simplification des fonctions logiques
La méthode algébrique
• On applique les règles et les lois pour simplifier les fonctions
logiques (moins de termes, moins de variables)
=1
= A.B.C + A.B. + A..C.D = A.B.(C+) + A..C.D
= A.B + A..C.D
Propriété 11
A + (.B) = A+B = A.(B+(.C.D))
= A.(B+C.D)
= A.B + A.C.D 144
Algèbre de Boole
Simplification des fonctions logiques
La méthode de Karnaugh
Somme de produit
X Y Z Y.Z + X..Z + X.Y. + X.Y.Z
0 0 0 0
= X.Y+ Y.Z + X.Z
0 0 1 0
XY
0 1 0 0 00 01 11 10
Z
0 1 1 1
0 1
1 0 0 0
1 0 1 1 1 1 1 1
1 1 0 1
1 1 1 1
145
Algèbre de Boole
Simplification des fonctions logiques
La méthode de Karnaugh
Produit de somme
X Y Z +Y+Z . X++Z . X+Y+ . X+Y+Z
0 0 0 0
= Y+Z . X+Z . X+Y
0 0 1 0
XY
0 1 0 0 00 01 11 10
Z
0 1 1 1
0 0 0 0
1 0 0 0
1 0 1 1 1 0
1 1 0 1
1 1 1 1 =. +. +. 146
Algèbre de Boole
Représentation des fonctions logiques
Simplification des fonctions logiques
La méthode de Karnaugh
Somme de produit 2 variables
1 1 1 0
= A.B+ A. =A
A 0 1
B
0 1

1 1 147
Algèbre de Boole
Représentation des fonctions logiques
Simplification des fonctions logiques
La méthode de Karnaugh
Somme de produit 3 variables
1 1 1 1 1 0 1 0 1
= A.B.C + A.B. + A..C = A.B + A.C
AB = A.B
00 01 11 10
C
0 1
= A.C
1 1 1 148
Algèbre de Boole
Simplification des fonctions logiques
La méthode de Karnaugh
Somme de produit 4 variables
1 1 1 1 1 0 1 0 1 1
= A.B.C + A.B. + A..C.D = A.B + A.C.D
AB
CD 00 01 11 10
00 1
01 1
11 1 1
10 1
149
Algèbre de Boole
Simplification des fonctions logiques
La méthode de Karnaugh
Somme de produit 5 variables
1 1 1 1 1 1 0 1 1 0 1 1 1
= A.B.C.D + A.B..D + A..C.D.E = A.B.D. + A.B.D.E
A.B.D.E AB + A.C.D.E
AB
CD 00 01 11 10 CD 00 01 11 10
00 00
01 1 A.C.D.E 01 A.B.D.
1
11 1 1 11 1
10 10
E=1 E=0 150
Algèbre de Boole
Simplification des fonctions logiques
La méthode de Karnaugh
Produit de somme
1 0 0 0 0 0 0 0 1 0 1 0 0 0 1 0
= A+++ . +++ . A++C+ . ++C+
AB
𝒇 =. CD 00 01 11 10
𝒇= B+D 00 0 0
01
11
10 0 0
151
Algèbre de Boole
Simplification des fonctions logiques
La méthode de Karnaugh
Produit de somme
1 0 0 1 1 0 1 1 0 0 0 1 0 0 1 1
= A+++D . A++C+D . +++D . ++C+D
AB
𝒇 = .D CD 00 01 11 10
𝒇 = B+ 00
01 0 0
11 0 0
10
152
Chapitre 5 : Introduction à
l’algorithmique

153
Introduction à
l’algorithmique
• Introduction

• Syntaxe des instructions

• Structures conditionnelles

• Structures itératives

• Structures complexes - Vecteurs et Matrices

• Procédures et fonctions

154
Introduction à
l’algorithmique
Introduction

Algorithme

Mohamed Ibn Moussa Al-Khwârizmî


780 – 850
Mathématicien
155
Introduction à
l’algorithmique
Introduction

• Un algorithme est une suite finie et non


ambiguë d'instructions permettant de résoudre
un problème.

• L'algorithmique est l'étude et la production de


règles et techniques qui sont impliquées dans
la définition et la conception d'algorithmes.
156
Introduction à
l’algorithmique
Introduction
• Un algorithme exprime la structure logique
d’un programme : il est indépendant du
langage de programmation.

Problème Algorithme Programme Code source

157
Introduction à
l’algorithmique
Introduction
1. Dans un saladier,
placez les 300 g de
farine.
2.Versez ensuite 20 cl
d'eau.
3.Laissez reposer la
pâte.
4.Étalez la sauce tomate
sur la pâte.
5.Enfournez au milieu
du four pendant 8 min.
158
Introduction à
l’algorithmique
Syntaxe des instructions
Variables et constantes

Variable

Constante
159
Introduction à
l’algorithmique
Syntaxe des instructions
Variables et constantes

Variables :
A:
Z: Type
X: Chaine
Réel de caractères
Entier
Booléen
0.4,
0, 1,1.33,
Abé&R
Vrai 2, 3,Faux
ou 2,
4, 3,
5, 4,
…5, …

Constantes :
A
B
W Faux
5.22
‘Ammar’
La
12
-7 valeur

160
Introduction à
l’algorithmique
Syntaxe des instructions
Variables et constantes
Algorithme Exo1
Test
Exemple 1
2
Nom de l’algorithme
Déclaration
Constantes 21
B ← 21 ;
Variables B Z
Z : entier ;
Début
Le corps de l’algorithme
Les instructions ;
Fin 161
Introduction à
l’algorithmique
Syntaxe des instructions
Les instructions Les instructions de base
Input/Output
Lire/Ecrire Algorithme Hello
Déclaration
Affectation Constantes Hello

Variables
Incrémentation
Début

Ecrire (‘Hello’) ;
Fin 162
Introduction à
l’algorithmique
Syntaxe des instructions
Les instructions Les instructions de base
Input/Output
Lire/Ecrire Algorithme Hello
Déclaration
Hello
Entrez
Hello votre
Ammarnom
Constantes
Ammar Variables
X X: chaine de caractères
Début
Ecrire (‘Hello’) ;
(‘Entrez votre nom’) ;
Lire (X) ;
Ecrire (‘Hello’, X) :
Fin 163
Introduction à
l’algorithmique
Syntaxe des instructions
Les instructions de base
Affectation
Algorithme Affectation
Déclaration
Constantes 21 3
B ← 21 ;
Variables B Z
Z : entier ;
Début
Z ←3;
Z←B;
Fin 164
Introduction à
l’algorithmique
Syntaxe des instructions
Les instructions de base
Incrémentation
Algorithme Incrémentation
Déclaration
Constantes 21 256
5+
H ← 21 ;
Variables H M
M : entier ;
Début
M← 5 ;
M← M+H ;
Fin 165
Introduction à
l’algorithmique
Syntaxe des instructions
Les instructions de base
Décrémentation
Algorithme Décrémentation
Déclaration
Variables 332- 1
N : entier ;
N
Début
N← 3 ;
N← N - 1 ;
Fin
166
Introduction à
l’algorithmique
Syntaxe des instructions
Les instructions de base
Permutation
Algorithme Permutation
Déclaration
Variables
S : entier ; 2 7
Y : entier ;
S Y
D : entier ;
Début D
S ←2; S←Y;
Y ←7; Y←D;
D←S;
Fin 167
Introduction à
l’algorithmique
Structures conditionnelles
Si Condition alors Instruction
Algorithme Conditionnel
Déclaration Le nombre
Constantes est positif
B ← 21 ;
Variables
Début
Si B > 0 alors
Ecrire (‘Le nombre est positif’) ;
Finsi
Fin 168
Introduction à
l’algorithmique
Structures conditionnelles
Si Condition alors Instruction1 Sinon Instruction2
Algorithme Alternative
Déclaration
Le nombre
Le nombre
Entrez un
Variables
estnégatif
est positif
nombre
5
-5 X: réel ;
Début
X
Ecrire (‘Entrez un nombre’) ;
Lire (X) ;
Si X > 0 alors
Ecrire (‘Le nombre est positif’) ;
Sinon -5
5
Ecrire (‘Le nombre est négatif’) ;
Finsi
169
Fin
Introduction à
l’algorithmique
Structures conditionnelles

Si XXCondition
>> 00 ou
et Y
Y >> 00 alors Si XXCondition
>> 00 ou
et Y
Y >> 00 alors

Instructions ; Instruction1 ;

Finsi Sinon (X ≤ 0 et
ouYY≤≤0)
0)

Instruction2 ;
: Une ou
plusieurs
Finsi
conditions 170
Introduction à
l’algorithmique
Structures conditionnelles
Exemple produit de deux nombres

Si (X > 0 et Y > 0) Ou (X < 0 et Y < 0) alors


Ecrire (‘Le produit de X*Y est positif’) ;
Sinon (X < 0 ou Y < 0) Et (X > 0 ou Y > 0)
Ecrire (‘Le produit de X*Y est négatif’) ;
Finsi

171
Introduction à
l’algorithmique
Structures conditionnelles
Exemple produit de deux nombres

Le produit
Si (X > 0 et Y > 0) Ou (X < 0 et Y < 0) alors de X*Y est
négatif
positif
Ecrire (‘Le produit de X*Y est positif’) ;
Sinon (X < 0 ou Y < 0) Et (X > 0 ou Y > 0)
Ecrire (‘Le produit de X*Y est négatif’) ;
Finsi
X=
X= -1222
Y=
Y=--2557
Y=
Y=
172
Introduction à
l’algorithmique
Structures itératives
1. Dans un saladier,
placez les 300 g de
farine.
2.Versez ensuite 20 cl
d'eau.
3.Laissez reposer la
pâte.
4.Étalez la sauce tomate
sur la pâte.
5.Enfournez au milieu
du four pendant 8 min.
173
Introduction à
l’algorithmique
Structures itératives

1. Dans un saladier, placez


x2 les 300 g de farine.
2.Versez ensuite 20 cl d'eau.
3.Laissez reposer la pâte.
4.Étalez la sauce tomate sur
la pâte.
5.Enfournez au milieu du
four pendant 8 min. 174
Introduction à
l’algorithmique
Structures itératives
Les boucles

Deux types de boucles:

 La boucle « Tant que ».

 La boucle « Pour ».

175
Introduction à
l’algorithmique
Structures itératives
La boucle « Tantque »
Algorithme Exemple
Déclaration Bonjour
Variables Bonjour
i : entier ; ii == 15432 Bonjour
Début Bonjour
i←1;
Tantque (i ≤ 4) faire;
Ecrire (‘Bonjour’)
Ecrire (‘Bonjour’) ;
Ecrire (‘Bonjour’)
i ← i +1 ; ;
Ecrire (‘Bonjour’) ;
Fintantque
Fin 176
Introduction à
l’algorithmique
Structures itératives
La boucle « Pour »
Algorithme Exemple 2
Déclaration Bonjour
Variables Bonjour
i : entier ; ii == 15432 Bonjour
Début Bonjour
PourEcrire
i allant de 1 à 4 faire
(‘Bonjour’) ;
Ecrire (‘Bonjour’) ;
Ecrire (‘Bonjour’) ;
Finpour
Ecrire (‘Bonjour’) ;
Fin 177
Introduction à
l’algorithmique
Structures itératives
« Tantque » Vs. « Pour »
Algorithme Exemple 1 Algorithme Exemple 2
Déclaration La boucle « Tantque » : Déclaration
Variables Incrémentation
Indice
manuelle Variables
de la boucle
i : entier ; de l’indice i : entier ;
La boucle « Pour  » :
Début Intervalle d’itération Début
Incrémentation
i←1; automatique de l’indice
Tantque (i ≤ 4) faire Pour i allant de 1 à 4 faire
Ecrire (‘Bonjour’) ; Ecrire (‘Bonjour’) ;
i ← i +1 ; Fintantque : renvoie à
Fintantque Finpour
Tantque Fin
Fin Finpour : renvoie à pour 178
Introduction à
l’algorithmique
Structures itératives
Exemple suite de nombres
Algorithme Suite 4 nombres
Déclaration
Variables i=5 1
2
3
4 7 8 9 10
X : entier ; i : entier ;
Début 7
X = 10
8
9 Entrez
7 8un nombre
9 10
Ecrire (‘Entrez un nombre’) ;
Lire (X) ;
i←1;
Tantque (i ≤ 4) faire
X ← X +1 ;
Ecrire (X) ;
i ← i +1 ;
Fintantque 6
Fin 179
Introduction à
l’algorithmique
Structures itératives
Exemple suite de nombres
Algorithme Suite 4 nombres
Déclaration
Variables i = 10
2
4
6
8 8 10 12 14
X : entier ; i : entier ;
Début 8
10
12
X = 14 Entrez
8 10un
12nombre
14
Ecrire (‘Entrez un nombre’) ;
Lire (X) ;
Pour i allant de 2 à 8 pas de 2 faire
X←X+2;
Ecrire (X) ;
Finpour
Fin
6 180
Introduction à
l’algorithmique
Structures itératives
Exemple suite de N nombres
Algorithme Suite N nombres
Déclaration

Variables
X : entier ; i : booléen ;
i = Vrai 7 8 9710
8 9111012
1113
Début X=… 7
8
9
10
11 14 15 16
Entrez un17 18 19
nombre
Ecrire (‘Entrez un nombre’) ;
20 21 22 23 24 …
Lire (X) ;
i ← ‘Vrai’ ;
Tantque (i == ‘Vrai’) faire
X ← X +1 ;
Ecrire (X) ;
FintantqueDans la boucle pour ce genre de 6
Fin condition est non permise 181
Introduction à
l’algorithmique
Structures itératives
Exemple suite de nombres
Algorithme Suite 4 nombres
Déclaration
Variables
X : entier ; i : entier ;
Début 8 10 12 14
Ecrire (‘Entrez un nombre’) ;
Lire (X) ;
Pour i allant de 1 à 4 faire
X←X+1;
Ecrire (X) ;
6
Finpour Dans la boucle pour : la condition
Fin doit être un intervalle de nombres 182
Introduction à
l’algorithmique
Structures complexes
Vecteurs - Matrices
Peut prendre une seule valeur
Variable Samir
Vrai
- 27
du même type au même temps

Peut prendre plusieurs valeurs


Vecteur A4 Vrai
Faux D
8 Vrai
19 Faux
M F3 (N valeurs) du même type au
même temps
A
2 B7 C1 D
92 Peut prendre plusieurs valeurs
Matrice E
55 F
13 G
7 H
43 (N*M valeurs) du même type au
I
12 J
17 K
16 L
21
même temps
183
Introduction à
l’algorithmique
Structures complexes
67
Vecteurs - Matrices
Vecteur

Comment
Comment ajouterdéclarer
desdes
récupérer valeurs
un vecteur
à un
valeurs vecteur
d’un ?vecteur
? ?
Algorithme Exemple vecteur
Déclaration Numéro de la case
Variables
A
X
Vect
V : Vecteur de 4 n entier
entier ;; 22 67 …
Début
0 1 2 3
Vect [2] ← 67 ;
Ecrire (Vect
Vect [2]
[2]) ;
Vect [0] ← 22 ;
Fin 184
Introduction à
l’algorithmique
Vecteurs - Matrices
Exemple ajout/récupération suite de nombres dans un vecteur

Algorithme Vecteur Suite 4 nombres


Déclaration i=4 2
0 X = 814
1
3 10
12
Variables
X : entier ; V : Vecteur de 4 entier ;
Début i : entier ; Entrez10un
88 10 12nombre
12 14
Ecrire (‘Entrez un nombre’) ;
Lire (X) ;
Pour i allant de 0 à 3 faire
V[0]
X ←X ←+X2+; 2 ;
V[i] ← X ;
Finpour
Pour i allant de 0 à 3 faire
Ecrire (V[i]) ; V 8 10 12 14
Finpour X=6 6 185
Fin 0 1 2 3
Introduction à
l’algorithmique
Structures complexes
67
Vecteurs - Matrices
Colonnes
2 lignes

Lignes
Matrice 4 colonnes
2*4
Comment
Comment
ajouter
récupérer
déclarer
desdes
valeurs
valeurs
une matrice
à une
d’une
matrices
? matrice
? ?
C
Algorithme Exemple matrice
Déclaration 0 1 2 3
Variables
0 22 …
XA : Matrice de 2*4
Mat
M L*Centier
entier; ; L
Début 1 67 …
Mat [1,2] ← 67 ;
Ecrire (Mat
Mat [1,2]
[1,2]) ;
Mat [0,0] ← 22 ;
Fin 186
Introduction à
L = 01 C
C == 0
312
4
l’algorithmique
X = 22
10
14
18
20
12
8
16 Vecteurs - Matrices
Exemple ajout/récupération suite de nombres dans une matrice
Algorithme Matrice Suite 8 nombres
Déclaration
Variables
X : entier ; M : Matrice de 2*4 entier ;
Début L : entier ; C : entier ;
Ecrire (‘Entrez un nombre’) ; 88 10
Entrez
10 12
un
12 14
14
nombre
Lire (X) ; 16 18 202022
22
Pour L allant de 0 à 1 faire
Pour C allant de 0 à 3 faire
MX← [0,0]
X← + 2X; + 2 ;
[L,C]
M [L] ←← X ;X ;
Finpour 0 1 2 3
Finpour
Pour L allant de 0 à 1 faire 0 8 10 12 14
Pour C allant de 0 à 3 faire
Ecrire (M[L,C]) ; 1 16 18 20 22
Finpour
Finpour M X=6 6 187
Fin
Introduction à
l’algorithmique
Procédures et Fonctions
• Les procédures et fonctions permettent de
décomposer un algorithme complexe en une
série de sous-algorithme plus simples.

Algorithme Complexe
Déclaration
Variables
Algorithme complexe X : entier ;
Algorithme principal Début
Procédure1 () ;
X ← Fonction1 () ; Sous-algorithmes
Fin 188
Introduction à
l’algorithmique
Procédures et Fonctions
• Une procédure est une suite ordonnée d’instructions
qui ne retourne pas de valeur.
• Il existe des procédures prédéfinies exemple : Sin ()
Cos () Mod().
• Il existe des procédures paramétrées. Exemple : Max
(X: entier ; Y : entier).
• Il existe des procédures non-paramétrées. Exemple:
Display ()
• L’appel de la procédure dans l’algorithme principal se
fait par son nom. 189
Introduction à
l’algorithmique
Procédures et Fonctions
Syntaxe procédures
Procédure Nom _Procédure ((I ) : entier
(les , K : entier)
paramètres)
Constantes
Variables Procédure
Procédure
non-paramétrée
paramétrée
X : entier ;
Début

Les instructions de la procédure ;


Fin 190
Introduction à
l’algorithmique
Procédures et Fonctions
Déclaration des procédures
Algorithme Principal
Déclaration
Procédure Proc_1 ( )
Variables
Variables locales
X : entier ;
Début
Les instructions de la procédure ;
Fin
Variables
X : entier ; Variables globales
Début
Les instructions
Proc_1 (); de l’algorithme principal
Appel ;
de la procédure Proc_1
Fin 191
Introduction à
l’algorithmique
Procédures et Fonctions

Exemple:

Ecrire un algorithme qui demande à


l’utilisateur deux nombres entiers, puis lui
renvoi le maximum des deux nombres à
travers une procédure.
192
Introduction à
l’algorithmique
Procédures et Fonctions
Algorithme Max_2_Nombres
> Déclaration
< Procédure Max (A : entier , B : entier)
A B Variables
Max Début
Si A > B alors
Ecrire (‘Le max est : ’, A) ;
7 8 Sinon
Ecrire (‘Le max est : ’, B) ;
X Y Finsi
Fin
Entrez deux Variables
Le max est : 8 X : entier ; Y : entier ;
nombres Début
Ecrire (‘Entrez deux nombres’) ;
Lire (X, Y) ;
7 8 Max (X , Y ) ; 193
Fin
Introduction à
l’algorithmique
Procédures et Fonctions
• Une fonction est une suite ordonnée d’instructions
qui retourne une valeur.
• Il existe des fonctions prédéfinies exemple : Fact ()
Cos () Mod().
• Il existe des fonctions paramétrées. Exemple : Min
(X: entier ; Y : entier).
• Il existe des procédures non-paramétrées. Exemple :
Racine ()
• L’appel de la fonction dans l’algorithme principal se
fait par son nom. 194
Introduction à
l’algorithmique
Procédures et Fonctions
Syntaxe fonctions
Fonction Nom _Fonction ((I ) : entier
(les , K : entier) : entier
paramètres) Type
réel
Constantes
Variables fonction non-paramétrée
paramétrée
X : réel ;
Début
X ← Les instructions de la fonction ;
Retourner X ;
Fin 195
Introduction à
l’algorithmique
Procédures et Fonctions
Déclaration des fonctions
Algorithme Principal
Déclaration
Fonction Fonc_1 ( ) : entier
Variables
Variables locales
X : entier ;
Début
X ← Les instructions de la fonction ;
Retourner X ;
Fin
Variables
X : entier ; Variables globales
Début
Les instructions
Fonc_1 (); de l’algorithme
Appel
principal
de la fonction
; Fonc_1
Fin 196
Introduction à
l’algorithmique
Procédures et Fonctions
Fonctions

Exemple:
Ecrire un algorithme qui demande à
l’utilisateur deux nombres entiers, puis lui
renvoi le minimum des deux nombres à
travers une fonction.
197
Introduction à
l’algorithmique
Procédures et Fonctions
Algorithme Min_2_Nombres
> Déclaration
< Fonction Min (A : entier , B : entier) : entier
A B Variables
7
Début
Min
Si A < B alors
Retourner A ;
7 8 Sinon
Retourner B ;
X Y Finsi
Fin
Le minimum
Entrez deux Variables
X : entier ; Y : entier ;
est : 7
nombres Début
Ecrire (‘Entrez deux nombres’) ;
Lire (X, Y) ;
7 8 Ecrire (‘Le
Minminimum
(X , Y ) ; est : ’, Min (X , Y ) ) ; 198
Fin
Introduction à
l’algorithmique
Procédures Vs. Fonctions

 Une procédure est une suite  Une fonction est une suite
ordonnée d’instructions qui ne ordonnée d’instructions qui
retourne pas de valeur. retourne une valeur.

 Une procédure ne possède pas un  Une fonction possède un type de


type de retour. retour.

 Une procédure renvoi le résultat à  Une fonction stock le résultat en


travers l’instruction : Ecrire. elle-même et le renvoi a travers
l’instruction : Retourner.

199
Références
• Introduction à l’informatique. Dr. Mohamed
Mahdi Benmoussa. ENPC. 2019.

• Module Informatique1. Dr. Faycal Bachtarzi.


Ecole Nationale Supérieure de
Biotechnologies-Constantine. 2019.

200
Fin.

Merci pour votre attention.

Vous aimerez peut-être aussi