INTRODUCTION A
L'ALGORITHMIQUE ET PROGRAMMATION
I- INTRODUCTION
Le langage utilisé par l’ordinateur pour traiter les informations est le langage binaire (constitué
par une suite de 0 et 1) directement compréhensible par la machine. Ce langage est appelé :
langage machine.
Il est très difficile à un programmeur de programmer en langage machine, c’est pourquoi des
langages de programmation dis évolués ont été créés (pascal, C, C++, Basic, Java, Python…).
Un compilateur ou interpréteur est nécessaire pour traduire un programme écrit en un langage
évolué en langage machine.
II- DEFINITIONS
1- Langage de programmation
Un langage est un ensemble de mots clés (instructions ou fonction) et des règles de syntaxe
qui permettent d’écrire un programme exécutable par l’ordinateur.
2-Programme
Un programme est une succession ordonnée d’instructions dont la formulation et la syntaxe
répondent à un langage déterminé et permet d’obtenir de l’ordinateur l’exécution d’une tâche
précise.
3- Algorithme
Un algorithme est une suite finie d'actions à appliquer dans un ordre déterminé sur des
données afin d'obtenir un résultat en un temps fini.
Exemple
L'algorithme suivant décrit l'usage d'un appareil téléphonique à pièces de monnaie pour
effectuer une communication:
Début
Décrocher l'appareil;
Insérer les pièces nécessaires;
Composer le numéro désiré;
L’interlocuteur décroche l’appareil
Parler;
Raccrocher;
Fin
Remarque :
On a une représentation de la résolution du problème sous la forme d’un algorithme. Mais
certains cas n’ont pas été prévus (numéro occupé), d’où insuffisance de la solution.
Il est nécessaire de détailler les ordres élémentaires connus par la machine et prévoir toutes les
éventualités. La machine ne peut pas intervenir dans les cas non prévus.
Enoncé du
problème
Analyse
Algorithme
Codage
Programme
Exemple:
Problème:
Calculer le montant TTC à payer pour un lot de PC portable sachant le taux de TVA est de
20%.
- Analyse:
L'analyse du problème sert à extraire les composantes suivantes:
Les données à fournir (données d'entré)
Les résultats à produire (données de sortie)
Le traitement qui permet de transformer les données en résultats.
Données d'entré:
Données Identificateur Type Catégorie
Prix unitaire hors taxe d'un PC PU Réel Variable
Données de sortie :
Données Identificateur Type Catégorie
Montant TTC MTTC Réel Variable
Traitement:
MHT = PU * Nb
MTVA = MHT * TVA
MTTC = MHT + MTVA
a- Le pseudo-code:
Le pseudo-code est une 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
b- Organigramme :
Un organigramme est la représentation graphique d'un algorithme.
Dans un organigramme les instructions sont représentées par des symboles graphiques normalisés qui
sont:
Symbole Instruction
DEBUT et FIN
LIRE et ECRIRE
TRAITEMENT ou CALCUL
DECISION ou TEST
Revoie
Pseudo-Code Organigramme
Algorithme Calcul;Début
Variable
PU, MHT
MTVA: ←Réel
0.02
MTVA, MTTC : Réel
"Donner le prix unitaire"
Nb : Entier
Constante
TVA ← 0.02PU
Début
"Donner le nombre de PC"
Ecrire ("Donner le prix unitaire: ")
Lire (PU);
Nb
Ecrire ("Donner le nombre de PC : ")
MHT ← PU * Nb
Lire(Nb);
MTVA ← MHT * TVA
MHT ← PU * Nb
MTTC ← MHT + MTVA
MTVA ← MHT * TVA
"Montant à payer :", MTTC
MTTC ← MHT + MTVA
Ecrire ("Montant à payer :", MTTC)
Fin Fin
Exercice
Problème:
On désire écrire un programme permettant de calculer la surface totale d'un cylindre.
Noteinfo
Identificateur Données
Réel
Type
a- définition
Les actions élémentaires qui composent un algorithme sont appelées Instructions ou aussi
fonctions, elles représentent des ordres à exécuter dans l'algorithme.
Syntaxe: Syntaxe:
Lire(Variable) ou Lire(Var1, Var2,…) Variable = input ("Message")
Exemple: Exemple:
Lire(Nom) Nom = input( "Entre votre nom:")
Lire(A, B, C) Age = int(input("Quel âge as-tu?"))
Algorithme Python
Syntaxe: Syntaxe:
Ecrire(Variable) print (Variable)
Ecrire(Valeur) print(Valeur)
Ecrire(Expression) print(Expression)
Exemple: Exemple:
Ecrire(A) print (A)
Ecrire(5) print (5)
Ecrire (A+5, "Fin") print (A+5, "Fin")
Exercice 1:
1 A ← 10 Quelles sont les valeurs des Variables A, B, C et D après
exécution.
2 B ← 30
N° ligne A
3 C ← A+B 1
4 D ← C*A 2
5 C ← A+C 3
4
6 D ← C*A
5
6
Exercice 2:
Ecrire un algorithme permettant de saisir 2 nombres puis permute leurs valeurs.
En cas de besoin (ou de doute), on utilise les parenthèses pour indiquer les opérations à
effectuer en priorité exemple: (2 + 3) * 7 vaut 35