Vous êtes sur la page 1sur 69

Introduction à l’algorithmique

Codage et structures de contrôle


Procédures et fonctions

Cours: Informatique – L3-Géomètre-Topographe

Mor Absa LOUM


(morabsa.loum5@gmail.com, morabsa.loum@univ-thies.sn)

Université de Thiès
UFR de Sciences de l’ingénieur

October 26, 2021

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

Programme: 28h (Cours + TDs/TPs)

Partie 1: Algorithmique
Chapitre 1: Introduction à l’algorithmique
Chapitre 2: Codage et structures de contrôle
Chapitre 3: Procédures et fonctions
Chapitre 4: Les tableaux
Chapitre 5: La Récursivité
Partie 2: Programmation
Chapitre 1: Introduction à la programmation (Python)
Chapitre 2: Variables et affichage
Chapitre 3: Structures de contrôle
Chapitre 4: Listes (tableaux)
Chapitre 5: Fonctions
Chapitre 6: Fichiers

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction à l’algorithmique
Codage et structures de contrôle
Procédures et fonctions

1 Introduction à l’algorithmique
Algorithme
Propriétés d’un algorithme
Représentation schématique d’un algorithme
La programmation informatique
La structure générale d’un algorithme
2 Codage et structures de contrôle
Les constantes et les variables
Les types de bases
Les opérateurs sur les types de bases
Structures conditionnelles
Structures répétitives
3 Procédures et fonctions
Introduction
Syntaxe
Applications
Récursivité

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

1 Introduction à l’algorithmique
Algorithme
Propriétés d’un algorithme
Représentation schématique d’un algorithme
La programmation informatique
La structure générale d’un algorithme
2 Codage et structures de contrôle
Les constantes et les variables
Les types de bases
Les opérateurs sur les types de bases
Structures conditionnelles
Structures répétitives
3 Procédures et fonctions
Introduction
Syntaxe
Applications
Récursivité

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

Définitions

Algorithmique
L’algorithmique est une science très ancienne dont le nom vient d’un
mathématicien arabe du XIX siècle Al-Khawarizmi. L’algorithmique désigne
actuellement la science qui étudie l’application des algorithmes à l’informatique.

Algorithme
Un algorithme est une suite d’instructions qui une fois exécuté
correctement, conduit à un résultat donné. Si l’algorithme est juste, le
résultat est le “résultat voulu”.
Un algorithme est aussi défini comme une spécification d’un schéma de
calcul, sous forme d’une suite d’opérations élémentaires obéissant à un
enchainement déterminé.

Exemple
Recette de thiébou Djieun
Utilisation d’un mode d’emploi

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

Définitions

Algorithmique
L’algorithmique est une science très ancienne dont le nom vient d’un
mathématicien arabe du XIX siècle Al-Khawarizmi. L’algorithmique désigne
actuellement la science qui étudie l’application des algorithmes à l’informatique.

Algorithme
Un algorithme est une suite d’instructions qui une fois exécuté
correctement, conduit à un résultat donné. Si l’algorithme est juste, le
résultat est le “résultat voulu”.
Un algorithme est aussi défini comme une spécification d’un schéma de
calcul, sous forme d’une suite d’opérations élémentaires obéissant à un
enchainement déterminé.

Exemple
Recette de thiébou Djieun
Utilisation d’un mode d’emploi

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

Définitions

Algorithmique
L’algorithmique est une science très ancienne dont le nom vient d’un
mathématicien arabe du XIX siècle Al-Khawarizmi. L’algorithmique désigne
actuellement la science qui étudie l’application des algorithmes à l’informatique.

Algorithme
Un algorithme est une suite d’instructions qui une fois exécuté
correctement, conduit à un résultat donné. Si l’algorithme est juste, le
résultat est le “résultat voulu”.
Un algorithme est aussi défini comme une spécification d’un schéma de
calcul, sous forme d’une suite d’opérations élémentaires obéissant à un
enchainement déterminé.

Exemple
Recette de thiébou Djieun
Utilisation d’un mode d’emploi

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

Propriétés d’un algorithme

Propriétés
Un algorithme doit être:
1. Précis: il doit indiquer
l’ordre des étapes qui le constituent
à quel moment il faut cesser une action
à quel moment il faut en commencer une autre
comment choisir entre différentes possibilités
2. Déterministe: Une suite d’exécutions à partir des mêmes données doit
produire des résultats identiques.
3. Fini dans le temps et productif: C’est-à-dire s’arrêter au bout d’un
temps fini en fournissant le résultat escompté.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

Exemple

la résolution de l’équation du premier degré Ax + B = 0.


Lire les coefficients A et B
Si A est non nul alors
affecter à x la valeur −B/A.
Sinon
Si B est nul alors
afficher tout réel est solution
Sinon
afficher pas de solution

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

Organigramme
La représentation schématique d’un algorithme est couramment désignée par le
terme organigramme.
L’organigramme permet donc la mise en œuvre de symboles représentant des
traitements, des données, des liaisons... Il présente l’intérêt d’une visualisation
globale mais reste limité aux études peu complexes (s’il ne tient plus sur une
page, l’organigramme devient illisible · · · ). En voici quelques symboles:

Figure: Quelques symboles

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

Organigramme de la résolution de l’équation du premier degré Ax + B = 0.

Figure: Organigramme de résolution de l’équation Ax + B = 0.


Informatique Cours: Informatique – L3-Géomètre-Topographe
Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

La programmation informatique

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

La programmation informatique

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

La programmation informatique

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

La structure générale d’un algorithme

Informatique Cours: Informatique – L3-Géomètre-Topographe


Algorithme
Introduction à l’algorithmique Propriétés d’un algorithme
Codage et structures de contrôle Représentation schématique d’un algorithme
Procédures et fonctions La programmation informatique
La structure générale d’un algorithme

La structure générale d’un algorithme

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

1 Introduction à l’algorithmique
Algorithme
Propriétés d’un algorithme
Représentation schématique d’un algorithme
La programmation informatique
La structure générale d’un algorithme
2 Codage et structures de contrôle
Les constantes et les variables
Les types de bases
Les opérateurs sur les types de bases
Structures conditionnelles
Structures répétitives
3 Procédures et fonctions
Introduction
Syntaxe
Applications
Récursivité

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Les constantes et les variables


Les constantes représentent des nombres, des chiffres, des caractères et
des chaines de caractères. Une fois initialisé, leurs valeurs ne peuvent
pas être modifier tout au long de l’exécution de l’algorithme.
Mot clé: constante
Les variables représentent des nombres, des chiffres, des caractères, des
chaines de caractères. Leurs valeurs peuvent être modifiées tout au long
de l’exécution de l’algorithme.
Mot clé: variable

Caractéristiques
les constantes et les variables sont définies par deux caractéristiques
fondamentales:
l’identificateur: correspond au nom et est composé de lettres et de chiffres
le type: détermine la nature et les propriétés (opérations réalisables sur ce
type)
constante identificateur = valeur; variable identificateur : type;

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Les constantes et les variables


Les constantes représentent des nombres, des chiffres, des caractères et
des chaines de caractères. Une fois initialisé, leurs valeurs ne peuvent
pas être modifier tout au long de l’exécution de l’algorithme.
Mot clé: constante
Les variables représentent des nombres, des chiffres, des caractères, des
chaines de caractères. Leurs valeurs peuvent être modifiées tout au long
de l’exécution de l’algorithme.
Mot clé: variable

Caractéristiques
les constantes et les variables sont définies par deux caractéristiques
fondamentales:
l’identificateur: correspond au nom et est composé de lettres et de chiffres
le type: détermine la nature et les propriétés (opérations réalisables sur ce
type)
constante identificateur = valeur; variable identificateur : type;

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Les constantes et les variables


Les constantes représentent des nombres, des chiffres, des caractères et
des chaines de caractères. Une fois initialisé, leurs valeurs ne peuvent
pas être modifier tout au long de l’exécution de l’algorithme.
Mot clé: constante
Les variables représentent des nombres, des chiffres, des caractères, des
chaines de caractères. Leurs valeurs peuvent être modifiées tout au long
de l’exécution de l’algorithme.
Mot clé: variable

Caractéristiques
les constantes et les variables sont définies par deux caractéristiques
fondamentales:
l’identificateur: correspond au nom et est composé de lettres et de chiffres
le type: détermine la nature et les propriétés (opérations réalisables sur ce
type)
constante identificateur = valeur; variable identificateur : type;

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Les types de bases


Le booléen (mot clé : Booléen) VRAI ou FAUX. C’est un type logique
qui peut prendre que les valeurs VRAI ou FAUX. Il servira pour les
expressions et les conditions.
Le caractère (mot clé : Caractère) ‘a’, ‘!’, ‘8’, ‘*’, ‘B’. Il prend ses valeurs
dans l’ensemble des caractères de la table ASCII.
L’entier (mot clé : Entier) 45, −565, · · · Il prend ses valeurs dans un
sous-ensemble des entiers relatifs. C’est un ensemble dans lequel chaque
élément possède un successeur et un prédécesseur.
Le réel (mot clé : Réel) −3.67, 4.2569, 18.2e − 6. Il prend ses valeurs dans
un sous-ensemble de réels décimaux signés. Dans la plupart des langages,
cet ensemble n’est pas un ensemble fini.
La chaine de caractères (mot clé : Chaine) ‘bonjour’, ‘chaine de
caractères’. Ce type se compose d’une suite de symboles de type caractère.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Les types de bases


Le booléen (mot clé : Booléen) VRAI ou FAUX. C’est un type logique
qui peut prendre que les valeurs VRAI ou FAUX. Il servira pour les
expressions et les conditions.
Le caractère (mot clé : Caractère) ‘a’, ‘!’, ‘8’, ‘*’, ‘B’. Il prend ses valeurs
dans l’ensemble des caractères de la table ASCII.
L’entier (mot clé : Entier) 45, −565, · · · Il prend ses valeurs dans un
sous-ensemble des entiers relatifs. C’est un ensemble dans lequel chaque
élément possède un successeur et un prédécesseur.
Le réel (mot clé : Réel) −3.67, 4.2569, 18.2e − 6. Il prend ses valeurs dans
un sous-ensemble de réels décimaux signés. Dans la plupart des langages,
cet ensemble n’est pas un ensemble fini.
La chaine de caractères (mot clé : Chaine) ‘bonjour’, ‘chaine de
caractères’. Ce type se compose d’une suite de symboles de type caractère.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Les types de bases


Le booléen (mot clé : Booléen) VRAI ou FAUX. C’est un type logique
qui peut prendre que les valeurs VRAI ou FAUX. Il servira pour les
expressions et les conditions.
Le caractère (mot clé : Caractère) ‘a’, ‘!’, ‘8’, ‘*’, ‘B’. Il prend ses valeurs
dans l’ensemble des caractères de la table ASCII.
L’entier (mot clé : Entier) 45, −565, · · · Il prend ses valeurs dans un
sous-ensemble des entiers relatifs. C’est un ensemble dans lequel chaque
élément possède un successeur et un prédécesseur.
Le réel (mot clé : Réel) −3.67, 4.2569, 18.2e − 6. Il prend ses valeurs dans
un sous-ensemble de réels décimaux signés. Dans la plupart des langages,
cet ensemble n’est pas un ensemble fini.
La chaine de caractères (mot clé : Chaine) ‘bonjour’, ‘chaine de
caractères’. Ce type se compose d’une suite de symboles de type caractère.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Les types de bases


Le booléen (mot clé : Booléen) VRAI ou FAUX. C’est un type logique
qui peut prendre que les valeurs VRAI ou FAUX. Il servira pour les
expressions et les conditions.
Le caractère (mot clé : Caractère) ‘a’, ‘!’, ‘8’, ‘*’, ‘B’. Il prend ses valeurs
dans l’ensemble des caractères de la table ASCII.
L’entier (mot clé : Entier) 45, −565, · · · Il prend ses valeurs dans un
sous-ensemble des entiers relatifs. C’est un ensemble dans lequel chaque
élément possède un successeur et un prédécesseur.
Le réel (mot clé : Réel) −3.67, 4.2569, 18.2e − 6. Il prend ses valeurs dans
un sous-ensemble de réels décimaux signés. Dans la plupart des langages,
cet ensemble n’est pas un ensemble fini.
La chaine de caractères (mot clé : Chaine) ‘bonjour’, ‘chaine de
caractères’. Ce type se compose d’une suite de symboles de type caractère.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Les types de bases


Le booléen (mot clé : Booléen) VRAI ou FAUX. C’est un type logique
qui peut prendre que les valeurs VRAI ou FAUX. Il servira pour les
expressions et les conditions.
Le caractère (mot clé : Caractère) ‘a’, ‘!’, ‘8’, ‘*’, ‘B’. Il prend ses valeurs
dans l’ensemble des caractères de la table ASCII.
L’entier (mot clé : Entier) 45, −565, · · · Il prend ses valeurs dans un
sous-ensemble des entiers relatifs. C’est un ensemble dans lequel chaque
élément possède un successeur et un prédécesseur.
Le réel (mot clé : Réel) −3.67, 4.2569, 18.2e − 6. Il prend ses valeurs dans
un sous-ensemble de réels décimaux signés. Dans la plupart des langages,
cet ensemble n’est pas un ensemble fini.
La chaine de caractères (mot clé : Chaine) ‘bonjour’, ‘chaine de
caractères’. Ce type se compose d’une suite de symboles de type caractère.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Les opérateurs sur les types de bases

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

L’opération d’affectation

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

L’opération d’affectation

Remarques
La division entière (DIV) de x par y , notée x DIV y a pour résultat la
partie entière de la division de x par y .
Le reste de la division entière (MOD) de x par y , notée x MOD y a pour
résultat x − y × (x DIV y ) .

Exercice
3 DIV 2 =?; 5 DIV 2 =?; 5 DIV 3 =?; 3 DIV 5 =?; 3 DIV 3 =?;
3 MOD 2 =?; 5 MOD 2 =?; 5 MOD 3 =?; 3 MOD 5 =?; 3 MOD 3 =?;

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

L’opération d’affectation

Remarques
La division entière (DIV) de x par y , notée x DIV y a pour résultat la
partie entière de la division de x par y .
Le reste de la division entière (MOD) de x par y , notée x MOD y a pour
résultat x − y × (x DIV y ) .

Exercice
3 DIV 2 =?; 5 DIV 2 =?; 5 DIV 3 =?; 3 DIV 5 =?; 3 DIV 3 =?;
3 MOD 2 =?; 5 MOD 2 =?; 5 MOD 3 =?; 3 MOD 5 =?; 3 MOD 3 =?;

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

L’opération d’affectation

Remarques
La division entière (DIV) de x par y , notée x DIV y a pour résultat la
partie entière de la division de x par y .
Le reste de la division entière (MOD) de x par y , notée x MOD y a pour
résultat x − y × (x DIV y ) .

Exercice
3 DIV 2 =?; 5 DIV 2 =?; 5 DIV 3 =?; 3 DIV 5 =?; 3 DIV 3 =?;
3 MOD 2 =?; 5 MOD 2 =?; 5 MOD 3 =?; 3 MOD 5 =?; 3 MOD 3 =?;

Correction
3 DIV 2 = 1; 5 DIV 2 = 2; 5 DIV 3 = 1; 3 DIV 5 = 0; 3 DIV 3 = 1;
3 MOD 2 = 1; 5 MOD 2 = 1; 5 MOD 3 = 2; 3 MOD 5 = 3;
3 MOD 3 = 0;

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Les opérations d’entrées-sorties

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Premier algorithme

Exercice
Écrire un algorithme appelé “Epicier” qui demande en entrées le nombre de kg
de choux, le prix d’un kg de choux et qui calcule le prix de l’achat. Il faut
prendre en compte les taxes à payer qui s’élève à 18.6%.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Premier algorithme

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Exercices (1)

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Exercices (2)

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Exercices (3)

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Exercices (4)

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Notion de prédicat

Définition
Un prédicat est un énoncé ou proposition qui peut être vrai ou faux selon ce
qu’on entrain de parler. En mathématique, c’est une expression contenant une
ou plusieurs variables et qui est susceptible de devenir une proposition vraie ou
fausse selon les valeurs attribuées.

Exemple
x ← 10
x >3?
x <5?
x <= 10 ?
x < 11 ou x > 15 ?
x < 11 et x > 15 ?

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Évaluation d’une expression logique

Définition
Une condition est une expression de type logique. Ils lui correspondent deux
valeurs possibles Vraie ou Faux qu’on note par V ou F . Considérons deux
variables logiques A et B. Voyons quels les opérateurs logiques et leurs ordres
de priorités.
Les opérateurs logiques sont: Et, Ou, Non

Tableaux d’évaluation: Négation d’une condition


A Non A
Vrai Faux
Faux Vrai
Table: Négation d’une condition

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Évaluation d’une expression logique

Tableaux d’évaluation: Intersection de deux conditions (A et B)


B
Vrai Faux
A
Vrai Vrai Faux
Faux Faux Faux
Table: Intersection de deux conditions: A et B

Tableaux d’évaluation: Réunion de deux conditions (A ou B)


B
Vrai Faux
A
Vrai Vrai Vrai
Faux Vrai Faux
Table: Réunion de deux conditions: A ou B

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Exemple
x = 2, y = 5 et z = 2
Non (x == y )
x ! = y et non (z  y )
x ! = y ou (z  y )

Exemple
x = 2, y = 5 et z = 2
Non (x == y ) ⇒ vrai
x ! = y et non (z  y ) ⇒ vrai
x ! = y ou (z  y ) ⇒ vrai

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Exemple
x = 2, y = 5 et z = 2
Non (x == y )
x ! = y et non (z  y )
x ! = y ou (z  y )

Exemple
x = 2, y = 5 et z = 2
Non (x == y ) ⇒ vrai
x ! = y et non (z  y ) ⇒ vrai
x ! = y ou (z  y ) ⇒ vrai

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

La structure conditionnelle SI-Alors-Sinon

Elle permet d’effectuer tel ou tel traitement en fonction de la valeur d’une


condition.
Syntaxe

Si la condition est vraie alors le programme exécute la séquence 1 d’instructions


puis il se poursuit après l’instruction finsi, sinon (condition fausse) il exécute la
séquence 2 d’instructions.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

La structure conditionnelle SI-Alors-Sinon

Le fonctionnement de cette structure peut se visualiser par le schéma suivant:

Organigramme

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

La structure conditionnelle SI-Alors

Remarque: Dans certain cas la séquence 2 d’instructions n’existe pas; la


syntaxe et le schéma sont alors réduits à la forme suivante:

Si-Alors

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

Exemple

Écrire un algorithme qui prend en entrée deux entiers et indique le minimum de


deux.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

La boucle Pour

Cette structure exprime la répétition d’un traitement un nombre de fois.

Syntaxe
Pour v de vi à vf Faire
“Traitement”
FinFaire

où
v est une variable entière, qui compte le nombre de répétition du
“Traitement”,
vi la valeur initiale à laquelle v est initialisé,
vf la valeur finale à laquelle se termine v .

Remarque
La boucle Pour est utilisée lorsqu’on connait le nombre de répétition du
“Traitement” d’avance.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

La boucle Pour

Les étapes d’exécution


1. Initialisation de v par la valeur initiale vi
2. Test si v dépasse vf , si oui, alors la boucle s’arrête et l’exécution se
poursuit après le “FinFaire” Sinon
Exécution du “Traitement”,
Incrémentation de v par 1,
Retour à l’étape 2.

Application
Écrire l’algorithme qui permet de saisir les moyennes des N étudiants de la
classe informatique et de calculer la moyenne générale de la classe.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

La boucle Répéter · · · Jusqu’à

Syntaxe
Répéter
“Traitement”
Jusqu’à (condition d’arrêt)

Cet ordre d’itération permet de répéter le “Traitement” une ou plusieurs fois et


de s’arrêter sur une condition. En effet, lorsque la condition est vérifiée, la
boucle s’arrête, si non elle ré-exécute le “Traitement”.

Remarque
1. Dans cette boucle, le traitement est exécuté au moins une fois avant
l’évaluation de la condition d’arrêt.
2. Il doit y avoir une action dans le “Traitement” qui modifie la valeur de la
condition.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

La boucle Répéter · · · Jusqu’à

Les étapes d’exécution


1. Exécution du “Traitement”
2. Test de la valeur de la “condition d’arrêt”. Si elle est vérifiée Alors la
boucle s’arrête. Sinon Retour à l’étape 1.

Application
Écrire un algorithme qui saisit un nombre pair et qui détermine combien de fois
il est divisible par 2. Exemple 8 est divisible 3 fois par 2 (2 ∗ 2 ∗ 2).

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

La boucle Tant Que

Syntaxe
Tant Que (condition d’exécution) Faire
“Traitement”
FinFaire

Cet ordre d’itération permet de répéter le “Traitement” zéro ou plusieurs fois et


de s’arrêter lorsque la condition d’exécution n’est plus vérifiée. En effet, lorsque
la condition d’exécution est vérifiée, le “Traitement” est exécuté, si non elle
s’arrête.
Remarque
1. Dans cette boucle, le traitement peut ne pas être exécuté aucune fois,
c’est lorsque la condition d’exécution est à faux dés le départ.
2. Les paramètres de la condition doivent être initialisés par lecture ou par
affectation avant la boucle.
3. Il doit y avoir une action dans le “Traitement” qui modifie la valeur de la
condition.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Les constantes et les variables
Introduction à l’algorithmique Les types de bases
Codage et structures de contrôle Les opérateurs sur les types de bases
Procédures et fonctions Structures conditionnelles
Structures répétitives

La boucle Tant Que

Les étapes d’exécution


1. Test de la valeur de la “condition d’exécution”
2. Si elle est vérifiée Alors. Exécution du “Traitement” Retour à l’étape 1.
Sinon Arrêt de la boucle.

Application
Écrire un algorithme qui saisit un nombre pair et qui détermine combien de fois
il est divisible par 2. Exemple 8 est divisible 3 fois par 2 (2 ∗ 2 ∗ 2).

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction
Introduction à l’algorithmique
Syntaxe
Codage et structures de contrôle
Applications
Procédures et fonctions
Récursivité

1 Introduction à l’algorithmique
Algorithme
Propriétés d’un algorithme
Représentation schématique d’un algorithme
La programmation informatique
La structure générale d’un algorithme
2 Codage et structures de contrôle
Les constantes et les variables
Les types de bases
Les opérateurs sur les types de bases
Structures conditionnelles
Structures répétitives
3 Procédures et fonctions
Introduction
Syntaxe
Applications
Récursivité

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction
Introduction à l’algorithmique
Syntaxe
Codage et structures de contrôle
Applications
Procédures et fonctions
Récursivité

Introduction

Nécessité de regrouper les programmes


Lorsque l’on développe un programme et que le problème à résoudre est
complexe, le nombre d’instruction devient vite important. Il est nécessaire de
l’organiser (Modularité). Il suffit de regrouper sous un même nom les
instructions agissant dans le même but.

Procédures et fonctions
les Procédures qui réalisent un traitement
Fonctions qui effectuent un calcul et retournent un résultat

Appels des fonctions et procédures


Les fonctions et les procédures peuvent être appelées plusieurs fois à partir du
programme principal ou à partir d’autres fonctions en recevant à chaque fois
des paramètres ayant des valeurs différentes. Les Fonctions et les Procédures
sont donc des moyens de réutilisation de portions de code.
Les Fonctions et les procédures sont parfois appelées des sous-programmes

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction
Introduction à l’algorithmique
Syntaxe
Codage et structures de contrôle
Applications
Procédures et fonctions
Récursivité

Syntaxe

Syntaxe: Fonction
Fonction <nom fonction> ( <liste des paramètres>): <type de résultat>
<déclaration des objets locaux à la fonction >
Debut
<corps de la fonction>
Retourner (résultat)
Fin

Syntaxe: Procédure
Procedure <nom procedure> (<liste des paramètres>)
<déclaration des objets locaux à la procédure >
Debut
<corps de la procedure>
Fin

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction
Introduction à l’algorithmique
Syntaxe
Codage et structures de contrôle
Applications
Procédures et fonctions
Récursivité

Procédures et fonctions: Applications

Application 1
Écrire une fonction qui prend en entrées la longueur et la largeur d’un
rectangle. La fonction retournera le périmètre du rectangle en question.

Application 2
Écrire une procédure qui prend en entrées deux réels A et B et échange leurs
valeurs.

Informatique Cours: Informatique – L3-Géomètre-Topographe


Introduction
Introduction à l’algorithmique
Syntaxe
Codage et structures de contrôle
Applications
Procédures et fonctions
Récursivité

Récursivité

Définition
La récursivité consiste à remplacer une boucle par un appel à la fonction
elle-même.

Exemple: Factorielle
On considère la suite factorielle définie par:

0! = 1

n! = n(n − 1)!

Informatique Cours: Informatique – L3-Géomètre-Topographe

Vous aimerez peut-être aussi