Vous êtes sur la page 1sur 115

Filière : ISI-S1

Chapitre 1: Introduction à la programmation

Pr. Abderrahmane ELBALAOUI


Département Mathématiques et Informatiques
Email : elbalaoui@gmail.com

Chap 1 : Introduction à la programmation 1


Plan

1 Qu'est ce que la programmation

2 Algorithmique Vs langage de programmation

3 Dénitions des notions de base de l'algorithmique

Chap 1 : Introduction à la programmation 2


Qu'est ce que la programmation

Plan

1 Qu'est ce que la programmation

2 Algorithmique Vs langage de programmation

3 Dénitions des notions de base de l'algorithmique

Chap 1 : Introduction à la programmation 3


Qu'est ce que la programmation

Langage machine Vs Langage de programmation

Langage machine: l'information est exprimée et manipulée sous forme


d'une suite de bits.
Problème: le langage machine est dicile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuite
converti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, qui
représentent les ordres données à la machine, de façon symbolique:
↑ déjà plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez ecace pour développer des applications complexes
Apparition des langages de programmation
Chap 1 : Introduction à la programmation 4
Qu'est ce que la programmation

Langage machine Vs Langage de programmation

Langage machine: l'information est exprimée et manipulée sous forme


d'une suite de bits.
Problème: le langage machine est dicile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuite
converti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, qui
représentent les ordres données à la machine, de façon symbolique:
↑ déjà plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez ecace pour développer des applications complexes
Apparition des langages de programmation
Chap 1 : Introduction à la programmation 4
Qu'est ce que la programmation

Langage machine Vs Langage de programmation

Langage machine: l'information est exprimée et manipulée sous forme


d'une suite de bits.
Problème: le langage machine est dicile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuite
converti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, qui
représentent les ordres données à la machine, de façon symbolique:
↑ déjà plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez ecace pour développer des applications complexes
Apparition des langages de programmation
Chap 1 : Introduction à la programmation 4
Qu'est ce que la programmation

Langage machine Vs Langage de programmation

Langage machine: l'information est exprimée et manipulée sous forme


d'une suite de bits.
Problème: le langage machine est dicile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuite
converti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, qui
représentent les ordres données à la machine, de façon symbolique:
↑ déjà plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez ecace pour développer des applications complexes
Apparition des langages de programmation
Chap 1 : Introduction à la programmation 4
Qu'est ce que la programmation

Langage machine Vs Langage de programmation

Langage machine: l'information est exprimée et manipulée sous forme


d'une suite de bits.
Problème: le langage machine est dicile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuite
converti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, qui
représentent les ordres données à la machine, de façon symbolique:
↑ déjà plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez ecace pour développer des applications complexes
Apparition des langages de programmation
Chap 1 : Introduction à la programmation 4
Qu'est ce que la programmation

Langage machine Vs Langage de programmation

Langage machine: l'information est exprimée et manipulée sous forme


d'une suite de bits.
Problème: le langage machine est dicile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuite
converti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, qui
représentent les ordres données à la machine, de façon symbolique:
↑ déjà plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez ecace pour développer des applications complexes
Apparition des langages de programmation
Chap 1 : Introduction à la programmation 4
Qu'est ce que la programmation

Langage machine Vs Langage de programmation

Langage machine: l'information est exprimée et manipulée sous forme


d'une suite de bits.
Problème: le langage machine est dicile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuite
converti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, qui
représentent les ordres données à la machine, de façon symbolique:
↑ déjà plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez ecace pour développer des applications complexes
Apparition des langages de programmation
Chap 1 : Introduction à la programmation 4
Qu'est ce que la programmation

Langage machine Vs Langage de programmation

Langage machine: l'information est exprimée et manipulée sous forme


d'une suite de bits.
Problème: le langage machine est dicile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuite
converti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, qui
représentent les ordres données à la machine, de façon symbolique:
↑ déjà plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez ecace pour développer des applications complexes
Apparition des langages de programmation
Chap 1 : Introduction à la programmation 4
Qu'est ce que la programmation

Qu'est ce que la programmation?

Programmer c'est réaliser des programmes informatiques pour eectuer


des traitements sur les données et résoudre des problèmes.
Les programmes ordonnent à l'ordinateur d'eectuer des actions et des
tâches.
Dénition d'un programme: suite d'instructions qui permettent à un
système informatique d'exécuter une tâche donnée.
En informatique, il existe de nombreux langages de plus ou moins haut
niveau :
- Plus un langage informatique est de haut niveau, plus il se rapproche du
langage humain.
- Plus un langage informatique est de bas niveau, plus il se rapproche du
langage machine.
Chap 1 : Introduction à la programmation 5
Qu'est ce que la programmation

Qu'est ce que la programmation?

Programmer c'est réaliser des programmes informatiques pour eectuer


des traitements sur les données et résoudre des problèmes.
Les programmes ordonnent à l'ordinateur d'eectuer des actions et des
tâches.
Dénition d'un programme: suite d'instructions qui permettent à un
système informatique d'exécuter une tâche donnée.
En informatique, il existe de nombreux langages de plus ou moins haut
niveau :
- Plus un langage informatique est de haut niveau, plus il se rapproche du
langage humain.
- Plus un langage informatique est de bas niveau, plus il se rapproche du
langage machine.
Chap 1 : Introduction à la programmation 5
Qu'est ce que la programmation

Qu'est ce que la programmation?

Programmer c'est réaliser des programmes informatiques pour eectuer


des traitements sur les données et résoudre des problèmes.
Les programmes ordonnent à l'ordinateur d'eectuer des actions et des
tâches.
Dénition d'un programme: suite d'instructions qui permettent à un
système informatique d'exécuter une tâche donnée.
En informatique, il existe de nombreux langages de plus ou moins haut
niveau :
- Plus un langage informatique est de haut niveau, plus il se rapproche du
langage humain.
- Plus un langage informatique est de bas niveau, plus il se rapproche du
langage machine.
Chap 1 : Introduction à la programmation 5
Qu'est ce que la programmation

Qu'est ce que la programmation?

Programmer c'est réaliser des programmes informatiques pour eectuer


des traitements sur les données et résoudre des problèmes.
Les programmes ordonnent à l'ordinateur d'eectuer des actions et des
tâches.
Dénition d'un programme: suite d'instructions qui permettent à un
système informatique d'exécuter une tâche donnée.
En informatique, il existe de nombreux langages de plus ou moins haut
niveau :
- Plus un langage informatique est de haut niveau, plus il se rapproche du
langage humain.
- Plus un langage informatique est de bas niveau, plus il se rapproche du
langage machine.
Chap 1 : Introduction à la programmation 5
Qu'est ce que la programmation

Propriétés des langages haut niveau:

compréhensible car proche du langage humain (en anglais)


permet une plus grande portabilité (indépendant du matériel)
Manipulation de données et d'expressions complexes (réels, objets,
a*b/c, ...)
Nécessité un traducteur (compilateur/interpréteur)
Exécution plus ou moins lente selon le traducteur

Chap 1 : Introduction à la programmation 6


Qu'est ce que la programmation

Propriétés des langages haut niveau:

compréhensible car proche du langage humain (en anglais)


permet une plus grande portabilité (indépendant du matériel)
Manipulation de données et d'expressions complexes (réels, objets,
a*b/c, ...)
Nécessité un traducteur (compilateur/interpréteur)
Exécution plus ou moins lente selon le traducteur

Chap 1 : Introduction à la programmation 6


Qu'est ce que la programmation

Propriétés des langages haut niveau:

compréhensible car proche du langage humain (en anglais)


permet une plus grande portabilité (indépendant du matériel)
Manipulation de données et d'expressions complexes (réels, objets,
a*b/c, ...)
Nécessité un traducteur (compilateur/interpréteur)
Exécution plus ou moins lente selon le traducteur

Chap 1 : Introduction à la programmation 6


Qu'est ce que la programmation

Propriétés des langages haut niveau:

compréhensible car proche du langage humain (en anglais)


permet une plus grande portabilité (indépendant du matériel)
Manipulation de données et d'expressions complexes (réels, objets,
a*b/c, ...)
Nécessité un traducteur (compilateur/interpréteur)
Exécution plus ou moins lente selon le traducteur

Chap 1 : Introduction à la programmation 6


Qu'est ce que la programmation

Propriétés des langages haut niveau:

compréhensible car proche du langage humain (en anglais)


permet une plus grande portabilité (indépendant du matériel)
Manipulation de données et d'expressions complexes (réels, objets,
a*b/c, ...)
Nécessité un traducteur (compilateur/interpréteur)
Exécution plus ou moins lente selon le traducteur

Chap 1 : Introduction à la programmation 6


Qu'est ce que la programmation

Compilateur Vs Interpréteur

Compilateur: traduire le programme entier une fois pour toute


↑ plus rapide à l'exécution
↑ sécurité du code source
↓ il faut recompiler à chaque modication

Interpréteur: traduire au fur et à mesure les instructions du


programme à chaque exécution
↑ exécution instantanée appréciable pour les débutants
↓ exécution lente par rapport à la compilation

Chap 1 : Introduction à la programmation 7


Qu'est ce que la programmation

Compilateur Vs Interpréteur
Compilateur: traduire le programme entier une fois pour toute
↑ plus rapide à l'exécution
↑ sécurité du code source
↓ il faut recompiler à chaque modication

Interpréteur: traduire au fur et à mesure les instructions du


programme à chaque exécution
↑ exécution instantanée appréciable pour les débutants
↓ exécution lente par rapport à la compilation

Chap 1 : Introduction à la programmation 7


Qu'est ce que la programmation

Étapes de réalisation d'un programme

La réalisation de programmes passe par l'écriture d'algorithmes. D'où


l'intérêt d'étudier l'algorithmique
Chap 1 : Introduction à la programmation 8
Algorithmique Vs langage de programmation

Plan

1 Qu'est ce que la programmation

2 Algorithmique Vs langage de programmation


Algorithmique-dénitions
Langage de programmation-Dénitions

3 Dénitions des notions de base de l'algorithmique

Chap 1 : Introduction à la programmation 9


Algorithmique Vs langage de programmation Algorithmique-dénitions

Plan

1 Qu'est ce que la programmation

2 Algorithmique Vs langage de programmation


Algorithmique-dénitions
Langage de programmation-Dénitions

3 Dénitions des notions de base de l'algorithmique

Chap 1 : Introduction à la programmation 10


Algorithmique Vs langage de programmation Algorithmique-dénitions

Algorithmique

Le terme algorithme vient du nom du mathématicien arabe


Al-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à eectuer et
de leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de la
syntaxe.
Algorithmique: discipline qui étudie les algorithmes et leurs
applications en Informatique
Une bonne connaissance de l'algorithmique permet d'écrire des
algorithmes exacts et ecaces, rendant facile leur implémentation
(écriture) dans n'importe quel langage de programmation.
Chap 1 : Introduction à la programmation 11
Algorithmique Vs langage de programmation Algorithmique-dénitions

Algorithmique

Le terme algorithme vient du nom du mathématicien arabe


Al-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à eectuer et
de leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de la
syntaxe.
Algorithmique: discipline qui étudie les algorithmes et leurs
applications en Informatique
Une bonne connaissance de l'algorithmique permet d'écrire des
algorithmes exacts et ecaces, rendant facile leur implémentation
(écriture) dans n'importe quel langage de programmation.
Chap 1 : Introduction à la programmation 11
Algorithmique Vs langage de programmation Algorithmique-dénitions

Algorithmique

Le terme algorithme vient du nom du mathématicien arabe


Al-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à eectuer et
de leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de la
syntaxe.
Algorithmique: discipline qui étudie les algorithmes et leurs
applications en Informatique
Une bonne connaissance de l'algorithmique permet d'écrire des
algorithmes exacts et ecaces, rendant facile leur implémentation
(écriture) dans n'importe quel langage de programmation.
Chap 1 : Introduction à la programmation 11
Algorithmique Vs langage de programmation Algorithmique-dénitions

Algorithmique

Le terme algorithme vient du nom du mathématicien arabe


Al-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à eectuer et
de leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de la
syntaxe.
Algorithmique: discipline qui étudie les algorithmes et leurs
applications en Informatique
Une bonne connaissance de l'algorithmique permet d'écrire des
algorithmes exacts et ecaces, rendant facile leur implémentation
(écriture) dans n'importe quel langage de programmation.
Chap 1 : Introduction à la programmation 11
Algorithmique Vs langage de programmation Algorithmique-dénitions

Algorithmique

Le terme algorithme vient du nom du mathématicien arabe


Al-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à eectuer et
de leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de la
syntaxe.
Algorithmique: discipline qui étudie les algorithmes et leurs
applications en Informatique
Une bonne connaissance de l'algorithmique permet d'écrire des
algorithmes exacts et ecaces, rendant facile leur implémentation
(écriture) dans n'importe quel langage de programmation.
Chap 1 : Introduction à la programmation 11
Algorithmique Vs langage de programmation Algorithmique-dénitions

Représentation d'un algorithme

Historiquement, deux façons pour représenter un algorithme:


Organigramme:
- Représentation graphique avec des symboles (carrés, losanges, etc.)
- ore une vue d'ensemble de l'algorithme
- représentation quasiment abandonnée aujourd'hui
Pseudo-code:
- représentation textuelle avec une série de conventions ressemblant à un
langage de programmation (sans les problèmes de syntaxe)
- plus pratique pour écrire un algorithme
- représentation largement utilisée

Chap 1 : Introduction à la programmation 12


Algorithmique Vs langage de programmation Algorithmique-dénitions

Représentation d'un algorithme

Historiquement, deux façons pour représenter un algorithme:


Organigramme:
- Représentation graphique avec des symboles (carrés, losanges, etc.)
- ore une vue d'ensemble de l'algorithme
- représentation quasiment abandonnée aujourd'hui
Pseudo-code:
- représentation textuelle avec une série de conventions ressemblant à un
langage de programmation (sans les problèmes de syntaxe)
- plus pratique pour écrire un algorithme
- représentation largement utilisée

Chap 1 : Introduction à la programmation 12


Algorithmique Vs langage de programmation Algorithmique-dénitions

Organigramme Vs Pseudo-code

Chap 1 : Introduction à la programmation 13


Algorithmique Vs langage de programmation Langage de programmation-Dénitions

Plan

1 Qu'est ce que la programmation

2 Algorithmique Vs langage de programmation


Algorithmique-dénitions
Langage de programmation-Dénitions

3 Dénitions des notions de base de l'algorithmique

Chap 1 : Introduction à la programmation 14


Algorithmique Vs langage de programmation Langage de programmation-Dénitions

Langage de programmation- Dénitions

Langage de programmation: notation conventionnelle permettant


de formuler des algorithmes et créer des programmes informatiques qui
les appliquent.
Comme pour un langage naturel, un langage de programmation est fait
d'un alphabet, un vocabulaire, des règles grammaticales,
sémantiques et syntaxiques.

Chap 1 : Introduction à la programmation 15


Algorithmique Vs langage de programmation Langage de programmation-Dénitions

Langage de programmation- Généralités

- Alphabet: basé sur les normes courantes comme la norme ASCII, qui
comporte les lettres de A à Z sans accent, des chires et des symboles,
ou bien la norme Unicode pour la plupart des langages modernes.
- Vocabulaire: ensemble des instructions construites à partir des
symboles de l'alphabet.
- Syntaxe: ensemble des règles qui dénissent la manière d'écrire ou de
disposer les éléments d'un langage pour obtenir des programmes valides
et compréhensibles par la machine.
- Sémantique: dénit le sens de chacune des phrases qui peuvent être
construites dans le langage, en particulier quels seront les eets de la
phrase lors de l'exécution du programme.

Chap 1 : Introduction à la programmation 16


Algorithmique Vs langage de programmation Langage de programmation-Dénitions

Langage de programmation- Généralités

- Alphabet: basé sur les normes courantes comme la norme ASCII, qui
comporte les lettres de A à Z sans accent, des chires et des symboles,
ou bien la norme Unicode pour la plupart des langages modernes.
- Vocabulaire: ensemble des instructions construites à partir des
symboles de l'alphabet.
- Syntaxe: ensemble des règles qui dénissent la manière d'écrire ou de
disposer les éléments d'un langage pour obtenir des programmes valides
et compréhensibles par la machine.
- Sémantique: dénit le sens de chacune des phrases qui peuvent être
construites dans le langage, en particulier quels seront les eets de la
phrase lors de l'exécution du programme.

Chap 1 : Introduction à la programmation 16


Algorithmique Vs langage de programmation Langage de programmation-Dénitions

Langage de programmation- Généralités

- Alphabet: basé sur les normes courantes comme la norme ASCII, qui
comporte les lettres de A à Z sans accent, des chires et des symboles,
ou bien la norme Unicode pour la plupart des langages modernes.
- Vocabulaire: ensemble des instructions construites à partir des
symboles de l'alphabet.
- Syntaxe: ensemble des règles qui dénissent la manière d'écrire ou de
disposer les éléments d'un langage pour obtenir des programmes valides
et compréhensibles par la machine.
- Sémantique: dénit le sens de chacune des phrases qui peuvent être
construites dans le langage, en particulier quels seront les eets de la
phrase lors de l'exécution du programme.

Chap 1 : Introduction à la programmation 16


Algorithmique Vs langage de programmation Langage de programmation-Dénitions

Langage de programmation- Généralités

- Alphabet: basé sur les normes courantes comme la norme ASCII, qui
comporte les lettres de A à Z sans accent, des chires et des symboles,
ou bien la norme Unicode pour la plupart des langages modernes.
- Vocabulaire: ensemble des instructions construites à partir des
symboles de l'alphabet.
- Syntaxe: ensemble des règles qui dénissent la manière d'écrire ou de
disposer les éléments d'un langage pour obtenir des programmes valides
et compréhensibles par la machine.
- Sémantique: dénit le sens de chacune des phrases qui peuvent être
construites dans le langage, en particulier quels seront les eets de la
phrase lors de l'exécution du programme.

Chap 1 : Introduction à la programmation 16


Algorithmique Vs langage de programmation Langage de programmation-Dénitions

Quel langage de programmation choisir?

Facilité d'apprentissage et d'utilisation pour le programmeur,


Rapidité d'exécution des programmes et stabilité (absence de défaut,
appelé bugs en informatiques),
Durabilité du langage,
Disponibilité de programmeurs experts du langage,
Possibilité de structuration du programme,
Possibilité d'intégrer des programmes écrits dans d'autres langages,
Portabilité du langage sur diérentes plateformes,
Existence d'une norme internationale concernant la dénition du
langage,
Chap 1 : Introduction à la programmation 17
Algorithmique Vs langage de programmation Langage de programmation-Dénitions

Exemples de langages de programmation

Le classement Tiobe index est basé sur les données issues de la


recherche du terme "programming language" dans 25 moteurs de
recherche.
Il est actualisé chaque mois. Le classement du mois d'octobre
2022 :

Chap 1 : Introduction à la programmation 18


Dénitions des notions de base de l'algorithmique

Plan

1 Qu'est ce que la programmation

2 Algorithmique Vs langage de programmation

3 Dénitions des notions de base de l'algorithmique


Structure d'un algorithme
Variables
Aectation
Expressions et opérateurs
Instructions d'entrée-sortie

Chap 1 : Introduction à la programmation 19


Dénitions des notions de base de l'algorithmique Structure d'un algorithme

Plan

1 Qu'est ce que la programmation

2 Algorithmique Vs langage de programmation

3 Dénitions des notions de base de l'algorithmique


Structure d'un algorithme
Variables
Aectation
Expressions et opérateurs
Instructions d'entrée-sortie

Chap 1 : Introduction à la programmation 20


Dénitions des notions de base de l'algorithmique Structure d'un algorithme

Propriétés d'un algorithme


Un algorithme doit:
avoir un nombre ni d'étapes,
avoir un nombre ni d'opérations par étape,
se termine après un nombre ni d'opérations,
fournir un résultat.
Les 3 étapes d'un algorithme:
Entrées: repérer les données du problème
Traitements: déterminer toutes les étapes des traitements à faire et donc
des "instructions" à développer pour arriver aux résultats.
Sorties: les résultats obtenus peuvent être achés sur l'écran, ou imprimés
sur papier, ou conservés dans un chier.
Tout programme informatique est formé de 4 types d'instructions
considérées comme des briques de base :
Les aectations de variables
Les lectures et/ou les écritures
Les tests
Les boucles Chap 1 : Introduction à la programmation 21
Dénitions des notions de base de l'algorithmique Structure d'un algorithme

Propriétés d'un algorithme


Un algorithme doit:
avoir un nombre ni d'étapes,
avoir un nombre ni d'opérations par étape,
se termine après un nombre ni d'opérations,
fournir un résultat.
Les 3 étapes d'un algorithme:
Entrées: repérer les données du problème
Traitements: déterminer toutes les étapes des traitements à faire et donc
des "instructions" à développer pour arriver aux résultats.
Sorties: les résultats obtenus peuvent être achés sur l'écran, ou imprimés
sur papier, ou conservés dans un chier.
Tout programme informatique est formé de 4 types d'instructions
considérées comme des briques de base :
Les aectations de variables
Les lectures et/ou les écritures
Les tests
Les boucles Chap 1 : Introduction à la programmation 21
Dénitions des notions de base de l'algorithmique Structure d'un algorithme

Propriétés d'un algorithme


Un algorithme doit:
avoir un nombre ni d'étapes,
avoir un nombre ni d'opérations par étape,
se termine après un nombre ni d'opérations,
fournir un résultat.
Les 3 étapes d'un algorithme:
Entrées: repérer les données du problème
Traitements: déterminer toutes les étapes des traitements à faire et donc
des "instructions" à développer pour arriver aux résultats.
Sorties: les résultats obtenus peuvent être achés sur l'écran, ou imprimés
sur papier, ou conservés dans un chier.
Tout programme informatique est formé de 4 types d'instructions
considérées comme des briques de base :
Les aectations de variables
Les lectures et/ou les écritures
Les tests
Les boucles
Chap 1 : Introduction à la programmation 21
Dénitions des notions de base de l'algorithmique Structure d'un algorithme

Composants d'un algorithme


L'entête, qui spécie :
Nom: nom signicatif donné à
l'algorithme Exemple:
Rôle : son utilité (optionnel)
Entrée ou variables ou données:
Les données en entrée, éléments
indispensables au bon
fonctionnement
Sortie : les données en sortie,
éléments calculés ou produits
Déclaration : les données locales,
servant aux calculs
Le corps, qui est composé :
du mot clé début
d'une suite d'instructions
du mot clé n
Chap 1 : Introduction à la programmation 22
Dénitions des notions de base de l'algorithmique Structure d'un algorithme

Composants d'un algorithme


L'entête, qui spécie :
Nom: nom signicatif donné à
l'algorithme
Rôle : son utilité (optionnel) Exemple:
Entrée ou variables ou données:
Les données en entrée, éléments
indispensables au bon
fonctionnement
Sortie : les données en sortie,
éléments calculés ou produits
Déclaration : les données locales,
servant aux calculs
Le corps, qui est composé :
du mot clé début
d'une suite d'instructions
du mot clé n
Chap 1 : Introduction à la programmation 22
Dénitions des notions de base de l'algorithmique Variables

Plan

1 Qu'est ce que la programmation

2 Algorithmique Vs langage de programmation

3 Dénitions des notions de base de l'algorithmique


Structure d'un algorithme
Variables
Aectation
Expressions et opérateurs
Instructions d'entrée-sortie

Chap 1 : Introduction à la programmation 23


Dénitions des notions de base de l'algorithmique Variables

Variables

Variable: petite information temporaire qu'on stocke dans la RAM.


Pourquoi est-elle appelée  variable  ? c'est une valeur qui peut
changer pendant le déroulement du programme.
Une variable possède :
- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identicateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...

Chap 1 : Introduction à la programmation 24


Dénitions des notions de base de l'algorithmique Variables

Variables

Variable: petite information temporaire qu'on stocke dans la RAM.


Pourquoi est-elle appelée  variable  ? c'est une valeur qui peut
changer pendant le déroulement du programme.
Une variable possède :
- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identicateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...

Chap 1 : Introduction à la programmation 24


Dénitions des notions de base de l'algorithmique Variables

Variables

Variable: petite information temporaire qu'on stocke dans la RAM.


Pourquoi est-elle appelée  variable  ? c'est une valeur qui peut
changer pendant le déroulement du programme.
Une variable possède :
- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identicateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...

Chap 1 : Introduction à la programmation 24


Dénitions des notions de base de l'algorithmique Variables

Variables

Variable: petite information temporaire qu'on stocke dans la RAM.


Pourquoi est-elle appelée  variable  ? c'est une valeur qui peut
changer pendant le déroulement du programme.
Une variable possède :
- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identicateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...

Chap 1 : Introduction à la programmation 24


Dénitions des notions de base de l'algorithmique Variables

Variables

Variable: petite information temporaire qu'on stocke dans la RAM.


Pourquoi est-elle appelée  variable  ? c'est une valeur qui peut
changer pendant le déroulement du programme.
Une variable possède :
- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identicateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...

Chap 1 : Introduction à la programmation 24


Dénitions des notions de base de l'algorithmique Variables

Variables

Variable: petite information temporaire qu'on stocke dans la RAM.


Pourquoi est-elle appelée  variable  ? c'est une valeur qui peut
changer pendant le déroulement du programme.
Une variable possède :
- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identicateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...

Chap 1 : Introduction à la programmation 24


Dénitions des notions de base de l'algorithmique Variables

Identicateur de variable

Règles pour l'identicateur d'une variable:


- Sont autorisés: Lettres en minuscules, majuscules et chires, les caractères
spécieux  _  et  $  uniquement
- Sont interdits: tous les autres caractères y compris, les espaces et les
accents.
- Le nom de variable doit obligatoirement commencé par une lettre.
- Certains langages, comme le langage C, diérencient entre les majuscules et
les minuscules.

Chap 1 : Introduction à la programmation 25


Dénitions des notions de base de l'algorithmique Variables

Identicateur de variable

Règles pour l'identicateur d'une variable:


- Sont autorisés: Lettres en minuscules, majuscules et chires, les caractères
spécieux  _  et  $  uniquement
- Sont interdits: tous les autres caractères y compris, les espaces et les
accents.
- Le nom de variable doit obligatoirement commencé par une lettre.
- Certains langages, comme le langage C, diérencient entre les majuscules et
les minuscules.

Chap 1 : Introduction à la programmation 25


Dénitions des notions de base de l'algorithmique Variables

Identicateur de variable

Règles pour l'identicateur d'une variable:


- Sont autorisés: Lettres en minuscules, majuscules et chires, les caractères
spécieux  _  et  $  uniquement
- Sont interdits: tous les autres caractères y compris, les espaces et les
accents.
- Le nom de variable doit obligatoirement commencé par une lettre.
- Certains langages, comme le langage C, diérencient entre les majuscules et
les minuscules.

Chap 1 : Introduction à la programmation 25


Dénitions des notions de base de l'algorithmique Variables

Identicateur de variable

Règles pour l'identicateur d'une variable:


- Sont autorisés: Lettres en minuscules, majuscules et chires, les caractères
spécieux  _  et  $  uniquement
- Sont interdits: tous les autres caractères y compris, les espaces et les
accents.
- Le nom de variable doit obligatoirement commencé par une lettre.
- Certains langages, comme le langage C, diérencient entre les majuscules et
les minuscules.

Chap 1 : Introduction à la programmation 25


Dénitions des notions de base de l'algorithmique Variables

Identicateur de variable

Règles pour l'identicateur d'une variable:


- Sont autorisés: Lettres en minuscules, majuscules et chires, les caractères
spécieux  _  et  $  uniquement
- Sont interdits: tous les autres caractères y compris, les espaces et les
accents.
- Le nom de variable doit obligatoirement commencé par une lettre.
- Certains langages, comme le langage C, diérencient entre les majuscules et
les minuscules.

Chap 1 : Introduction à la programmation 25


Dénitions des notions de base de l'algorithmique Variables

Règles pour les variables

Exemples autorisés: Exemples non autorisés:


A1 1A
ISI_2022 ISI 2022
ISI$2022 ISI-2022

Chap 1 : Introduction à la programmation 26


Dénitions des notions de base de l'algorithmique Variables

Règles pour les variables

Exemples autorisés: Exemples non autorisés:


A1 1A
TDEA_2022 TDEA 2022
TDEA$2022 TDEA-2022

Pour la lisibilité du code, il est conseillé de choisir des noms de


variables représentatifs des données qu'elles stockent.

Chap 1 : Introduction à la programmation 26


Dénitions des notions de base de l'algorithmique Variables

Règles pour les variables


Exemples autorisés: Exemples non autorisés:
A1 1A
TDEA_2022 TDEA 2022
TDEA$2022 TDEA-2022

Pour la lisibilité du code, il est conseillé de choisir des noms de


variables représentatifs des données qu'elles stockent.
Les mots ci-dessous ne peuvent pas être utilisés pour les identicateurs pour
la plupart des langages. Ils correspondent à des mots utilisés par ces langages.

Chap 1 : Introduction à la programmation 26


Dénitions des notions de base de l'algorithmique Variables

Types de variables

Le type d'une variable détermine l'ensemble des valeurs qu'elle peut


prendre. Les types oerts par la plupart des langages sont:
* Type numérique (entier ou réel)
- Byte (codé sur 1octet): de 0 à 255

- Entier court (codé sur 2 octets) : -32 768 à 32 767

- Entier long (codé sur 4 ou 8 octets)

- Réel simple précision (codé sur 4 octets)

- Réel double précision (codé sur 8 octets)

* Type caractère: lettres majuscules, minuscules, chires, symboles, ...


exemples: 'A', 'a', '1', '?', ...
* Type chaîne de caractère: toute suite de caractères
exemples: " Nom, Prénom", "code postale: 1000", ...
* Type logique ou booléen: deux valeurs VRAI ou FAUX
Chap 1 : Introduction à la programmation 27
Dénitions des notions de base de l'algorithmique Variables

Types de variables
Le type d'une variable détermine l'ensemble des valeurs qu'elle peut
prendre. Les types oerts par la plupart des langages sont:
* Type numérique (entier ou réel)
- Byte (codé sur 1octet): de 0 à 255

- Entier court (codé sur 2 octets) : -32 768 à 32 767

- Entier long (codé sur 4 ou 8 octets)

- Réel simple précision (codé sur 4 octets)

- Réel double précision (codé sur 8 octets)

* Type caractère: lettres majuscules, minuscules, chires, symboles, ...


exemples: 'A', 'a', '1', '?', ...
* Type chaîne de caractère: toute suite de caractères
exemples: " Nom, Prénom", "code postale: 1000", ...
* Type logique ou booléen: deux valeurs VRAI ou FAUX
Chap 1 : Introduction à la programmation 27
Dénitions des notions de base de l'algorithmique Variables

Types de variables
Le type d'une variable détermine l'ensemble des valeurs qu'elle peut
prendre. Les types oerts par la plupart des langages sont:
* Type numérique (entier ou réel)
- Byte (codé sur 1octet): de 0 à 255

- Entier court (codé sur 2 octets) : -32 768 à 32 767

- Entier long (codé sur 4 ou 8 octets)

- Réel simple précision (codé sur 4 octets)

- Réel double précision (codé sur 8 octets)

* Type caractère: lettres majuscules, minuscules, chires, symboles, ...


exemples: 'A', 'a', '1', '?', ...
* Type chaîne de caractère: toute suite de caractères
exemples: " Nom, Prénom", "code postale: 1000", ...
* Type logique ou booléen: deux valeurs VRAI ou FAUX
Chap 1 : Introduction à la programmation 27
Dénitions des notions de base de l'algorithmique Variables

Types de variables

Le type d'une variable détermine l'ensemble des valeurs qu'elle peut


prendre. Les types oerts par la plupart des langages sont:
* Type numérique (entier ou réel)
- Byte (codé sur 1octet): de 0 à 255

- Entier court (codé sur 2 octets) : -32 768 à 32 767

- Entier long (codé sur 4 ou 8 octets)

- Réel simple précision (codé sur 4 octets)

- Réel double précision (codé sur 8 octets)

* Type caractère: lettres majuscules, minuscules, chires, symboles, ...


exemples: 'A', 'a', '1', '?', ...
* Type chaîne de caractère: toute suite de caractères
exemples: " Nom, Prénom", "code postale: 1000", ...
* Type logique ou booléen: deux valeurs VRAI ou FAUX
Chap 1 : Introduction à la programmation 27
Dénitions des notions de base de l'algorithmique Variables

Types de variables
Le type d'une variable détermine l'ensemble des valeurs qu'elle peut
prendre. Les types oerts par la plupart des langages sont:
* Type numérique (entier ou réel)
- Byte (codé sur 1octet): de 0 à 255

- Entier court (codé sur 2 octets) : -32 768 à 32 767

- Entier long (codé sur 4 ou 8 octets)

- Réel simple précision (codé sur 4 octets)

- Réel double précision (codé sur 8 octets)

* Type caractère: lettres majuscules, minuscules, chires, symboles, ...


exemples: 'A', 'a', '1', '?', ...
* Type chaîne de caractère: toute suite de caractères
exemples: " Nom, Prénom", "code postale: 1000", ...
* Type logique ou booléen: deux valeurs VRAI ou FAUX
Chap 1 : Introduction à la programmation 27
Dénitions des notions de base de l'algorithmique Variables

Déclaration des variables

Important: toute variable utilisée dans un programme doit être


déclaré avant son utilisation
En pseudo-code, on va adopter la forme suivante pour la déclaration de
variables:
Remarque: pour le type numérique, on va se limiter aux entiers et réels
sans considérer les sous types

Chap 1 : Introduction à la programmation 28


Dénitions des notions de base de l'algorithmique Variables

Déclaration des variables

Important: toute variable utilisée dans un programme doit être


déclaré avant son utilisation
En pseudo-code, on va adopter la forme suivante pour la déclaration de
variables:

Remarque: pour le type numérique, on va se limiter aux entiers et réels


sans considérer les sous types

Chap 1 : Introduction à la programmation 28


Dénitions des notions de base de l'algorithmique Variables

Déclaration des variables

Important: toute variable utilisée dans un programme doit être


déclaré avant son utilisation
En pseudo-code, on va adopter la forme suivante pour la déclaration de
variables:

Remarque: pour le type numérique, on va se limiter aux entiers et réels


sans considérer les sous types

Chap 1 : Introduction à la programmation 28


Dénitions des notions de base de l'algorithmique Aectation

Plan

1 Qu'est ce que la programmation

2 Algorithmique Vs langage de programmation

3 Dénitions des notions de base de l'algorithmique


Structure d'un algorithme
Variables
Aectation
Expressions et opérateurs
Instructions d'entrée-sortie

Chap 1 : Introduction à la programmation 29


Dénitions des notions de base de l'algorithmique Aectation

L'instruction d'aectation

Aectation: attribuer une valeur à une variable. Cela consiste à


remplir ou à modier le contenu d'une zone mémoire.
En pseudo-code, l'aectation se note avec le signe ←
Exemple: Var ← e: attribue la valeur de e à la variable Var
- e peut être une valeur, une autre variable ou une expression
- Var et e doivent être de même type ou de types compatibles
L'aectation ne modie que ce qui est à gauche de la èche

Chap 1 : Introduction à la programmation 30


Dénitions des notions de base de l'algorithmique Aectation

L'instruction d'aectation

Aectation: attribuer une valeur à une variable. Cela consiste à


remplir ou à modier le contenu d'une zone mémoire.
En pseudo-code, l'aectation se note avec le signe ←
Exemple: Var ← e: attribue la valeur de e à la variable Var
- e peut être une valeur, une autre variable ou une expression
- Var et e doivent être de même type ou de types compatibles
L'aectation ne modie que ce qui est à gauche de la èche

Chap 1 : Introduction à la programmation 30


Dénitions des notions de base de l'algorithmique Aectation

L'instruction d'aectation

Aectation: attribuer une valeur à une variable. Cela consiste à


remplir ou à modier le contenu d'une zone mémoire.
En pseudo-code, l'aectation se note avec le signe ←
Exemple: Var ← e: attribue la valeur de e à la variable Var
- e peut être une valeur, une autre variable ou une expression
- Var et e doivent être de même type ou de types compatibles
L'aectation ne modie que ce qui est à gauche de la èche

Chap 1 : Introduction à la programmation 30


Dénitions des notions de base de l'algorithmique Aectation

L'instruction d'aectation

Aectation: attribuer une valeur à une variable. Cela consiste à


remplir ou à modier le contenu d'une zone mémoire.
En pseudo-code, l'aectation se note avec le signe ←
Exemple: Var ← e: attribue la valeur de e à la variable Var
- e peut être une valeur, une autre variable ou une expression
- Var et e doivent être de même type ou de types compatibles
L'aectation ne modie que ce qui est à gauche de la èche

Chap 1 : Introduction à la programmation 30


Dénitions des notions de base de l'algorithmique Aectation

L'instruction d'aectation

Aectation: attribuer une valeur à une variable. Cela consiste à


remplir ou à modier le contenu d'une zone mémoire.
En pseudo-code, l'aectation se note avec le signe ←
Exemple: Var ← e: attribue la valeur de e à la variable Var
- e peut être une valeur, une autre variable ou une expression
- Var et e doivent être de même type ou de types compatibles
L'aectation ne modie que ce qui est à gauche de la èche

Chap 1 : Introduction à la programmation 30


Dénitions des notions de base de l'algorithmique Aectation

Quelques remarques

Beaucoup de langages de programmation (C/C++, Java, . . . ) utilisent


le signe égal = pour l'aectation.
Attention aux confusions:
- l'aectation n'est pas commutative : A=B est diérente de B=A
- l'aectation est diérente d'une équation mathématique :
* A=A+1 a un sens en langages de programmation

* A+1=2 n'est pas possible en langages de programmation et n'est pas

équivalente à A=1

Certains langages donnent des valeurs par défaut aux variables


déclarées. Pour éviter tout problème il est préférable d'initialiser les
variables déclarées.

Chap 1 : Introduction à la programmation 31


Dénitions des notions de base de l'algorithmique Aectation

Quelques remarques

Beaucoup de langages de programmation (C/C++, Java, . . . ) utilisent


le signe égal = pour l'aectation.
Attention aux confusions:
- l'aectation n'est pas commutative : A=B est diérente de B=A
- l'aectation est diérente d'une équation mathématique :
* A=A+1 a un sens en langages de programmation

* A+1=2 n'est pas possible en langages de programmation et n'est pas

équivalente à A=1

Certains langages donnent des valeurs par défaut aux variables


déclarées. Pour éviter tout problème il est préférable d'initialiser les
variables déclarées.

Chap 1 : Introduction à la programmation 31


Dénitions des notions de base de l'algorithmique Aectation

Quelques remarques

Beaucoup de langages de programmation (C/C++, Java, . . . ) utilisent


le signe égal = pour l'aectation.
Attention aux confusions:
- l'aectation n'est pas commutative : A=B est diérente de B=A
- l'aectation est diérente d'une équation mathématique :
* A=A+1 a un sens en langages de programmation

* A+1=2 n'est pas possible en langages de programmation et n'est pas

équivalente à A=1

Certains langages donnent des valeurs par défaut aux variables


déclarées. Pour éviter tout problème il est préférable d'initialiser les
variables déclarées.

Chap 1 : Introduction à la programmation 31


Dénitions des notions de base de l'algorithmique Aectation

Exercice simple sur les aectations (1)

Donnez les valeurs des variables A, B et C après exécution des


instructions suivantes ?

Chap 1 : Introduction à la programmation 32


Dénitions des notions de base de l'algorithmique Aectation

Exercice simple sur les aectations (1)

Donnez les valeurs des variables A, B et C après exécution des


instructions suivantes ?

Chap 1 : Introduction à la programmation 32


Dénitions des notions de base de l'algorithmique Aectation

Exercice simple sur les aectations (1)

Donnez les valeurs des variables A, B et C après exécution des


instructions suivantes ?

A=7, B=12 et C=5

Chap 1 : Introduction à la programmation 32


Dénitions des notions de base de l'algorithmique Aectation

Exercice simple sur les aectations (2)

Donnez les valeurs des variables A et B après exécution des instructions


suivantes ?

Les deux dernières instructions permettent-elles d'échanger les valeurs de


A et B ?

Chap 1 : Introduction à la programmation 33


Dénitions des notions de base de l'algorithmique Aectation

Exercice simple sur les aectations (2)

Donnez les valeurs des variables A et B après exécution des instructions


suivantes ?

Les deux dernières instructions permettent-elles d'échanger les valeurs de


A et B ?

Chap 1 : Introduction à la programmation 33


Dénitions des notions de base de l'algorithmique Aectation

Exercice simple sur les aectations (2)

Donnez les valeurs des variables A et B après exécution des instructions


suivantes ?

A=2 et B=2
Les deux dernières instructions permettent-elles d'échanger les valeurs de
A et B ?

Chap 1 : Introduction à la programmation 33


Dénitions des notions de base de l'algorithmique Aectation

Exercice simple sur les aectations (3)

Ecrire un algorithme permettant d'échanger les valeurs de deux variables


A et B

Chap 1 : Introduction à la programmation 34


Dénitions des notions de base de l'algorithmique Aectation

Exercice simple sur les aectations (3)

Ecrire un algorithme permettant d'échanger les valeurs de deux variables


A et B

Chap 1 : Introduction à la programmation 34


Dénitions des notions de base de l'algorithmique Aectation

Exercice simple sur les aectations (3)

Ecrire un algorithme permettant d'échanger les valeurs de deux variables


A et B

On dit que C est une variable tampon utilisée pour stocker une des
valeurs temporairement.

Chap 1 : Introduction à la programmation 34


Dénitions des notions de base de l'algorithmique Expressions et opérateurs

Plan

1 Qu'est ce que la programmation

2 Algorithmique Vs langage de programmation

3 Dénitions des notions de base de l'algorithmique


Structure d'un algorithme
Variables
Aectation
Expressions et opérateurs
Instructions d'entrée-sortie

Chap 1 : Introduction à la programmation 35


Dénitions des notions de base de l'algorithmique Expressions et opérateurs

Expressions et opérateurs
Une expression peut être une valeur, une variable ou une opération
constituée de variables reliées par des opérateurs
Exemples: 1, b, a*2, a+ 3*b-c, ...
L'évaluation de l'expression fournit une valeur unique qui est le résultat
de l'opération
Les opérateurs dépendent du type de l'opération, ils peuvent être :
- Des opérateurs arithmétiques:+, -, *, /, % (modulo), ∧ (puissance)
- Des opérateurs logiques: NON, OU, ET
- Des opérateurs relationnels: =, <, >, <=, >=, 6=
- Des opérateurs sur les chaînes: & (concaténation)
Une expression est évaluée de gauche à droite mais en tenant compte
des priorités
Chap 1 : Introduction à la programmation 36
Dénitions des notions de base de l'algorithmique Expressions et opérateurs

Expressions et opérateurs
Une expression peut être une valeur, une variable ou une opération
constituée de variables reliées par des opérateurs
Exemples: 1, b, a*2, a+ 3*b-c, ...
L'évaluation de l'expression fournit une valeur unique qui est le résultat
de l'opération
Les opérateurs dépendent du type de l'opération, ils peuvent être :
- Des opérateurs arithmétiques:+, -, *, /, % (modulo), ∧ (puissance)
- Des opérateurs logiques: NON, OU, ET
- Des opérateurs relationnels: =, <, >, <=, >=, 6=
- Des opérateurs sur les chaînes: & (concaténation)
Une expression est évaluée de gauche à droite mais en tenant compte
des priorités
Chap 1 : Introduction à la programmation 36
Dénitions des notions de base de l'algorithmique Expressions et opérateurs

Expressions et opérateurs
Une expression peut être une valeur, une variable ou une opération
constituée de variables reliées par des opérateurs
Exemples: 1, b, a*2, a+ 3*b-c, ...
L'évaluation de l'expression fournit une valeur unique qui est le résultat
de l'opération
Les opérateurs dépendent du type de l'opération, ils peuvent être :
- Des opérateurs arithmétiques:+, -, *, /, % (modulo), ∧ (puissance)
- Des opérateurs logiques: NON, OU, ET
- Des opérateurs relationnels: =, <, >, <=, >=, 6=
- Des opérateurs sur les chaînes: & (concaténation)
Une expression est évaluée de gauche à droite mais en tenant compte
des priorités
Chap 1 : Introduction à la programmation 36
Dénitions des notions de base de l'algorithmique Expressions et opérateurs

Expressions et opérateurs
Une expression peut être une valeur, une variable ou une opération
constituée de variables reliées par des opérateurs
Exemples: 1, b, a*2, a+ 3*b-c, ...
L'évaluation de l'expression fournit une valeur unique qui est le résultat
de l'opération
Les opérateurs dépendent du type de l'opération, ils peuvent être :
- Des opérateurs arithmétiques:+, -, *, /, % (modulo), ∧ (puissance)
- Des opérateurs logiques: NON, OU, ET
- Des opérateurs relationnels: =, <, >, <=, >=, 6=
- Des opérateurs sur les chaînes: & (concaténation)
Une expression est évaluée de gauche à droite mais en tenant compte
des priorités
Chap 1 : Introduction à la programmation 36
Dénitions des notions de base de l'algorithmique Expressions et opérateurs

Expressions et opérateurs
Une expression peut être une valeur, une variable ou une opération
constituée de variables reliées par des opérateurs
Exemples: 1, b, a*2, a+ 3*b-c, ...
L'évaluation de l'expression fournit une valeur unique qui est le résultat
de l'opération
Les opérateurs dépendent du type de l'opération, ils peuvent être :
- Des opérateurs arithmétiques:+, -, *, /, % (modulo), ∧ (puissance)
- Des opérateurs logiques: NON, OU, ET
- Des opérateurs relationnels: =, <, >, <=, >=, 6=
- Des opérateurs sur les chaînes: & (concaténation)
Une expression est évaluée de gauche à droite mais en tenant compte
des priorités
Chap 1 : Introduction à la programmation 36
Dénitions des notions de base de l'algorithmique Expressions et opérateurs

Les opérateurs arithmétiques

L'ordre de priorité des opérateurs arithmétiques , du plus prioritaire au


moins prioritaire:
- ∧: puissance
- * et /: multiplication et division
- %: modulo
- + et -: addition et soustraction
Exemple: 2 + 3 * 7 = 23
En cas de besoin (ou de doute), on utilise les parenthèses pour indiquer
les opérations à eectuer en priorité.
Exemple: (2 + 3) * 7 = 35

Chap 1 : Introduction à la programmation 37


Dénitions des notions de base de l'algorithmique Expressions et opérateurs

Les opérateurs arithmétiques

L'ordre de priorité des opérateurs arithmétiques , du plus prioritaire au


moins prioritaire:
- ∧: puissance
- * et /: multiplication et division
- %: modulo
- + et -: addition et soustraction
Exemple: 2 + 3 * 7 = 23
En cas de besoin (ou de doute), on utilise les parenthèses pour indiquer
les opérations à eectuer en priorité.
Exemple: (2 + 3) * 7 = 35

Chap 1 : Introduction à la programmation 37


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Plan

1 Qu'est ce que la programmation

2 Algorithmique Vs langage de programmation

3 Dénitions des notions de base de l'algorithmique


Structure d'un algorithme
Variables
Aectation
Expressions et opérateurs
Instructions d'entrée-sortie

Chap 1 : Introduction à la programmation 38


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Les instructions d'entrée-sortie

Les instructions de lecture et d'écriture permettent à la machine de


communiquer avec l'utilisateur
La lecture permet d'entrer des donnés à partir du clavier
En pseudo-code, on note: lire (var): la machine met la valeur entrée au
clavier dans la zone mémoire nommée var
Remarque: Le programme s'arrête lorsqu'il rencontre une instruction
Lire et ne se poursuit qu'après la frappe d'une valeur au clavier et de la
touche Entrée

Chap 1 : Introduction à la programmation 39


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Les instructions d'entrée-sortie

Les instructions de lecture et d'écriture permettent à la machine de


communiquer avec l'utilisateur
La lecture permet d'entrer des donnés à partir du clavier
En pseudo-code, on note: lire (var): la machine met la valeur entrée au
clavier dans la zone mémoire nommée var
Remarque: Le programme s'arrête lorsqu'il rencontre une instruction
Lire et ne se poursuit qu'après la frappe d'une valeur au clavier et de la
touche Entrée

Chap 1 : Introduction à la programmation 39


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Les instructions d'entrée-sortie

Les instructions de lecture et d'écriture permettent à la machine de


communiquer avec l'utilisateur
La lecture permet d'entrer des donnés à partir du clavier
En pseudo-code, on note: lire (var): la machine met la valeur entrée au
clavier dans la zone mémoire nommée var
Remarque: Le programme s'arrête lorsqu'il rencontre une instruction
Lire et ne se poursuit qu'après la frappe d'une valeur au clavier et de la
touche Entrée

Chap 1 : Introduction à la programmation 39


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Les instructions d'entrée-sortie

Les instructions de lecture et d'écriture permettent à la machine de


communiquer avec l'utilisateur
La lecture permet d'entrer des donnés à partir du clavier
En pseudo-code, on note: lire (var): la machine met la valeur entrée au
clavier dans la zone mémoire nommée var
Remarque: Le programme s'arrête lorsqu'il rencontre une instruction
Lire et ne se poursuit qu'après la frappe d'une valeur au clavier et de la
touche Entrée

Chap 1 : Introduction à la programmation 39


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Les instructions d'entrée-sortie

L'écriture permet d'acher des résultats à l'écran (ou de les écrire


dans un chier)
En pseudo-code, on note: écrire (var): la machine ache le contenu
de la zone mémoire var
Conseil: Avant de lire une variable, il est fortement conseillé d'écrire des
messages à l'écran, an de prévenir L'utilisateur de ce qu'il doit saisir

Chap 1 : Introduction à la programmation 40


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Les instructions d'entrée-sortie

L'écriture permet d'acher des résultats à l'écran (ou de les écrire


dans un chier)
En pseudo-code, on note: écrire (var): la machine ache le contenu
de la zone mémoire var
Conseil: Avant de lire une variable, il est fortement conseillé d'écrire des
messages à l'écran, an de prévenir L'utilisateur de ce qu'il doit saisir

Chap 1 : Introduction à la programmation 40


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Les instructions d'entrée-sortie

L'écriture permet d'acher des résultats à l'écran (ou de les écrire


dans un chier)
En pseudo-code, on note: écrire (var): la machine ache le contenu
de la zone mémoire var
Conseil: Avant de lire une variable, il est fortement conseillé d'écrire des
messages à l'écran, an de prévenir L'utilisateur de ce qu'il doit saisir

Chap 1 : Introduction à la programmation 40


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Exemple lecture-écriture (1)

Ecrire un algorithme qui demande un nombre entier à l'utilisateur, puis


qui calcule et ache le double de ce nombre

Chap 1 : Introduction à la programmation 41


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Exemple lecture-écriture (1)

Ecrire un algorithme qui demande un nombre entier à l'utilisateur, puis


qui calcule et ache le double de ce nombre

Chap 1 : Introduction à la programmation 41


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Exemple lecture-écriture (1)

Ecrire un algorithme qui demande un nombre entier à l'utilisateur, puis


qui calcule et ache le double de ce nombre

Chap 1 : Introduction à la programmation 41


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Exemple lecture-écriture (2)

Ecrire un algorithme qui vous demande de saisir votre nom puis votre
prénom et qui ache ensuite votre nom complet

Chap 1 : Introduction à la programmation 42


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Exemple lecture-écriture (2)

Ecrire un algorithme qui vous demande de saisir votre nom puis votre
prénom et qui ache ensuite votre nom complet

Chap 1 : Introduction à la programmation 42


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Exemple lecture-écriture (2)

Ecrire un algorithme qui vous demande de saisir votre nom puis votre
prénom et qui ache ensuite votre nom complet

Chap 1 : Introduction à la programmation 42


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Conclusion

Dans ce chapitre, nous avons déni les principes de la


programmation.
Nous avons vu la diérence entre un langage de programmation et
l'algorithmique
Nous avons déni les notions base de l'algorithmique:
- Les variables
- La saisie et l'achage
- Les diérents opérateurs
Dans le chapitre suivant, nous allons étudier les diérentes
instructions de contrôle permettant d'écrire des programmes.

Chap 1 : Introduction à la programmation 43


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Conclusion

Dans ce chapitre, nous avons déni les principes de la


programmation.
Nous avons vu la diérence entre un langage de programmation et
l'algorithmique
Nous avons déni les notions base de l'algorithmique:
- Les variables
- La saisie et l'achage
- Les diérents opérateurs
Dans le chapitre suivant, nous allons étudier les diérentes
instructions de contrôle permettant d'écrire des programmes.

Chap 1 : Introduction à la programmation 43


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Conclusion

Dans ce chapitre, nous avons déni les principes de la


programmation.
Nous avons vu la diérence entre un langage de programmation et
l'algorithmique
Nous avons déni les notions base de l'algorithmique:
- Les variables
- La saisie et l'achage
- Les diérents opérateurs
Dans le chapitre suivant, nous allons étudier les diérentes
instructions de contrôle permettant d'écrire des programmes.

Chap 1 : Introduction à la programmation 43


Dénitions des notions de base de l'algorithmique Instructions d'entrée-sortie

Conclusion

Dans ce chapitre, nous avons déni les principes de la


programmation.
Nous avons vu la diérence entre un langage de programmation et
l'algorithmique
Nous avons déni les notions base de l'algorithmique:
- Les variables
- La saisie et l'achage
- Les diérents opérateurs
Dans le chapitre suivant, nous allons étudier les diérentes
instructions de contrôle permettant d'écrire des programmes.

Chap 1 : Introduction à la programmation 43

Vous aimerez peut-être aussi