Algorithmique Introduction
-
Upload
mehdi-harras -
Category
Documents
-
view
70 -
download
6
Embed Size (px)
Transcript of Algorithmique Introduction

Algorithmique TOUHTOUH Samira
Ecole Nationale des Sciences Appliquées d’El Jadida
1

Plan Introduction
Informatisation d’un problème : Langage algorithmique
Les variables Les constantes
Fonctions d’entrée-sortie
Les structures
Les tableaux
Les fonctions
Les fichiers
2

Plan Introduction
Informatisation d’un problème : Langage algorithmique
Les variables Les constantes
Fonctions d’entrée-sortie
Les structures de contrôle
Les fonctions
Les tableaux
Les fichiers
3

I. Introduction
Introduction à l’algorithme
• Histoire
Le mot algorithme vient du mot latinisé du mathématicien « Al-Khawarismi », après la traduction du livre « kitâb- aljabr wa al-muqâbala » par Gherardo di cremona sous le titre « Dixit Algorismi ».
• Définition générale
Une séquences d’instructions logique à suivre pour obtenir un résultat donné.
4

Exemple 1 : Comment accéder à L’ENSA?
1. Réussir le bac
2. Candidater
3. Passer le concours
4. Réussir le concours
5. Déposer un dossier d’inscription
Exemple 2 : Préparer un café au lait
1. Préparer le café
2. Préparer le lait
3. Mélanger les deux
5

L’ordre des opérations a son importance, mais dans certains cas plusieurs ordres sont possibles.
Parfois, il faut décomposer les actions trop complexes. Exemple : Préparer un café au lait 1. Préparer le café 2. Préparer le lait 3. Mélanger les deux Etape élémentaire : Préparer le café 1. Préparer la cafetière 2. Remplir d’eau 3. Mettre le filtre 4. Mettre le café 5. Brancher la cafetière 6. Lancer la cafetière
6

En informatique :
Procédure de calcul bien défini qui prend en entrée une valeur, ou un ensemble de valeurs, et qui donne en sortie une valeur, ou un ensemble de valeurs.
Exemple :
Algorithme d’Euclide
Calculer le PGCD de deux entiers a et b.
7
1. Ordonner a et b tel que a≥b
2. Calculer leur différence
3. Remplacer a par c c a-b

Exécuter avec a=40 et b=12
8
Fin4ba:11Etape
4b4a:10Etape
4bac:9Etape
4b8a:9Etape
8bac:8Etape
4b12a:7Etape
4bac:6Etape
12b16a:5Etape
16bac:4Etape
12b28a:3Etape
28bac:2Etape
12b40a:1Etape

Exemple 2
Exécuter avec a=100 et b=40
9

Un algorithme est dit correct si, pour chaque instance en entrée, il se termine en
produisant la bonne sortie.
Un algorithme incorrect risque de ne pas se terminer pour certaines instances en entrée, voire de se terminer sur une réponse autre que celle désirée.
Un algorithme peut être spécifié en langage humain ou en langage informatique. L’unique obligation est que la spécification fournisse une description précise de la procédure de calcul à suivre.
10

Plan
Introduction
Informatisation d’un problème : Langage algorithmique
Les variables
Algorithme
Les constantes
Les structures
Les fonctions
11

II. Langage algorithmique
12
Énoncé du problème
Algorithme Programme
Langage naturel
Langage algorithmique
Langage de programmation

Le langage algorithmique est différent du langage de programmation.
Langage de programmation
13
Langages de bas niveau
Liés au processeur
Langages de haut niveau
Langages évolués
CC++ Java

Le langage algorithmique exprime les instructions résolvant un problème donné indépendamment des particularités d’un langage de programmation.
En générale on utilise deux types de notations pour représenter les algorithmes:
• L’organigramme
• Le pseudo-code
14

L’organigramme est un schéma fonctionnel qui présente les différentes parties
d’un algorithme les unes à la suite des autres en utilisant des symboles graphiques pour visualiser l’exécution de l'algorithme et le cheminement des données.
15

Exemple : somme de deux nombres A et B
16
L’écriture d’un algorithme avec un organigramme est rapidement abandonnée. La lisibilité devient rapidement difficile pour les algorithmes assez long.

le pseudo-code est purement conventionnel, aucune machine n’est censée le reconnaître.
Exemple : Somme de deux nombres A et B
Algorithme somme_de_deux_nombres
Variables A, B, somme en entier
Début
Lire A
Lire B
somme A+B
Ecrire ‘’ La somme de A et B est : ’’, somme
Fin
17

Les différents éléments d’un algorithme sont :
• Données : ce qui doit être donné à l’algorithme
• Résultats : ce que doit produire l’algorithme
• L’algorithme : les grandes étapes des traitements et calculs
18

Exemple : Calculer le PGCD de a et b.
19
Données
Algorithme
Résultats
Données : a et b deux entiers positifs Résultat : PGCD de a et b

Structure d’un algorithme
Nom de l’algorithme // partie en-tête qui précise le nom de l’algorithme
Déclaration des variables // partie déclaration des variables
Début // partie traitement des données
Algorithme (définir les actions à suivre pour résoudre un problème donné)
Fin
20

Exemple 1 :
Ecrire un algorithme qui permet d’afficher « Bonjour ».
Algorithme algo-bonjour
Début
écrire ( ‘’bonjour‘’ );
Fin
21

Exemple 2 : Ecrire un programme qui demande un nombre à l’utilisateur, puis qui
calcule et affiche le carré de ce nombre,
Algorithme carré-de-deux-nombres
Variables nb, carr en Entier
Début
Ecrire ‘’Entrez un nombre:’ ’
Lire nb
carr nb*nb
Ecrire ‘’son carré est :’’ , carr
Fin
22