0% ont trouvé ce document utile (0 vote)
5 vues12 pages

CH1 Introduction Algorithmique

Ce document présente une introduction à l'algorithmique et à la programmation, en détaillant les phases de résolution d'un problème, la définition et la structure d'un algorithme, ainsi que les types de variables et leurs manipulations. Il aborde également les instructions algorithmiques simples, telles que l'affichage, la saisie et l'affectation, avec des exemples pratiques. Enfin, des exemples d'algorithmes sont fournis pour illustrer les concepts discutés.

Transféré par

hedi.kortas4
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
5 vues12 pages

CH1 Introduction Algorithmique

Ce document présente une introduction à l'algorithmique et à la programmation, en détaillant les phases de résolution d'un problème, la définition et la structure d'un algorithme, ainsi que les types de variables et leurs manipulations. Il aborde également les instructions algorithmiques simples, telles que l'affichage, la saisie et l'affectation, avec des exemples pratiques. Enfin, des exemples d'algorithmes sont fournis pour illustrer les concepts discutés.

Transféré par

hedi.kortas4
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

26/09/2021

Cours Algorithmique et
Programmation

Responsable : [Link]. Taktak Mariem

Chapitre 1 :
Introduction à l’algorithmique

2
26/09/2021

1. Démarche de résolution d’un problème


La résolution de n’importe quel problème doit passer par :
• Phase d’étude : c’est une phase qui consiste à comprendre le problème et
déterminer les données (entrées) et les résultats (sorties) à produire.
• Phase d’élaboration d’un schéma de résolution : c’est une phase
permettant de déterminer les étapes à suivre pour produire les résultats
cherchés à partir des données en entrée.
• Phase d’écriture de l’algorithme : c’est une phase de traduction des
phases précédentes en se basant sur les règles du langage algorithmique.
Le langage algorithmique est un langage proche du langage humain et
définie par un ensemble de mots réservés et de syntaxes d’écriture
d’actions.
• Phase de programmation : c‘est une phase de traduction de l’algorithme
en un programme dans un langage compréhensible par la machine.

2. Notion de base
 Définition d’un algorithme : un algorithme est une séquence
d’étapes pour résoudre un problème donnée. Un algorithme prend en
entrée une valeur, ou un ensemble de valeurs, et qui donne en sortie
une valeur, ou un ensemble de valeurs.
La structure d’un algorithme contient deux parties essentielles :
• Partie entête (déclaration) : définir l’ensemble des structures de
donnée, les constantes et les variables à utiliser.
• Partie corps (instruction) : contenant une suite d’instructions qu’on
devra effectuer pour arriver à un résultat déterminé à partir d’une
situation donnée.

Information en Information en
Algorithme
entrée sortie

4
26/09/2021

2. Notion de base
 Structure d’un algorithme :

Algorithme nom_algorithme
Const
/* Ensemble des constantes et leur valeur */
Entête Type
/* Définition des types personnalisée*/
Var
/* Ensemble des variables à utiliser dans le corps de l’algorithme */
Début
/* suite des instruction à exécuter*/
instruction 1
Corps
Instruction 2
…..
Fin

2. Notion de base
 Constantes :
o Une constante correspond à une valeur littérale. A chaque fois que la constante
apparaît dans un algorithme, elle est remplacée par sa valeur. Une constante est
une variable dont sa valeur est inchangeable au cours d’exécution.
 On pourra adopter la règle suivante pour les identificateurs de constantes : elles
sont composées de majuscule avec un tiret bas pour les rupture de mots
Exemple : TAUX_ANNUEL  1.2
PI  3.14
o Le type d’une constante est déduit à partir de sa valeur

6
26/09/2021

2. Notion de base
 Variables : mémoire

o Une variable sert à mémoriser une valeur. C’est une zone de


mémoire, physique dans un ordinateur, virtuelle dans un algorithme.
Elle se présente dans la partie entête de l’algorithme. Sa valeur
possède un type et peut être changer au cours du temps. ……
sommeFinale
o Pour manipuler une variable, on lui donne un nom : son
identificateur. Lorsqu’on utilise l’identificateur d’une variable, c’est
en fait pour manipuler la valeur de la variable.
prixHT ……
o Un identificateur doit commencer par une lettre, il se compose de
lettres, de chiffres et éventuellement du caractère « _ ».
 On pourra adopter la règle suivante pour les identificateurs de
variables : elles sont composées de minuscules, sauf aux ruptures
de mots qui seront en majuscule.
Exemple : sommeFinale, prixHT

3. Types de variables
 Types de Variables :
Un type définit l’ensemble des valeurs que peut prendre une variable
de ce type ainsi que les actions qui y sont autorisées.
Un type peut être classé selon plusieurs critères parmi lesquels on cite :
o Simple/ composé :
s’il est composé, il peut être homogène ou hétérogène
o Prédéfini / personnalisé :
Prédéfini : s’il est défini avec le langage utilisé ( exemple : entier, réel, etc)
Personnalisée : s’il n’est pas prédéfini. Il doit être alors défini dans le bloc
Type.

8
26/09/2021

3. Types de variables
La déclaration d’une variable de type simple se fait dans la partie Var.
• Type entier :
Ce type est associé aux variable prenant leurs valeurs dans un intervalle
d’entiers relatifs fini (Z). Une variable de type entier pourra être positif,
négatif ou nul.
Syntaxe de déclaration :
identificateur1, identificateur2, …., identificateurN : entier
Exemple :
nombreEtudiant : entier

3. Types de variables
Opération de manipulation :

opération Symbole
Instructions algorithmiques Lire(), écrire() et affectation
Opérations arithmétiques Division(/), addition(+), soustraction(-) et
multiplication (*)
Puissance **
Valeur absolue abs
Division entière div
Modulo mod
Opérateurs de comparaison <, <=, >, >=, <>, =

10
26/09/2021

3. Types de variables
Type réel :
Ce type est associé aux variable prennent leurs valeurs dans l’ensemble
fini de nombres réels(R).
Syntaxe de déclaration :
identificateur1, identificateur2, …., identificateurN : réel
Opération de manipulation :
les opérations autorisées sur ce type sont les mêmes que sur le type
« entier » à l’exception des opérateurs mod et div
Exemple :
sommeFinale, prixHT : réel

11

3. Types de variables
Type caractère :
• Ce type permet de définir les variables représentant un seul élément dans l’ensemble des
caractères éditables : les lettres majuscules et minuscules, les caractères de ponctuations, le
blanc, les chiffres, …
• La valeurs de type caractère est noté entre apostrophe
Syntaxe de déclaration :
identificateur1, identificateur2, …., identificateurN : car
Opération de manipulation :
les opérations permises sur le type caractère sont les suivant :
o les instructions algorithmiques
o Les opérateurs de comparaisons (<, <=, >, >=, <>, = ) : la comparaison de deux chaines de
caractères revient leurs code ASCII respectifs
o Ord(C) : donne le code ASCII du caractère existant dans la variable C. le résultat est de type
entier
o Char (C) : donne le caractère correspond au code ASCII existant dans la variable C. le résultat est
de type caractère

12
26/09/2021

3. Types de variables
Type chaine de caractère :
• Ce type permet de définir les variables représentant une suite de caractères
• La valeurs de type chaine de caractère est noté entre deux guillemets
Syntaxe de déclaration :
identificateur1, identificateur2, …., identificateurN : chaîne
Opération de manipulation :

opération Symbole
Concaténation &
Longueur longueur (chaîne)
Extraction extraction(sous-chaîne, chaîne)

13

3. Types de variables
Type logique :
• Il s’agit d’un type associé à un objet prenant ses valeurs dans l’ensemble { vrai, faux}
Syntaxe de déclaration :
identificateur1, identificateur2, …., identificateurN : logique
Opération de manipulation :
opération Symbole
Comparaison <, <=,>, >=, =, <>
Négation NON ou ˥
Intersection ET
Union OU
Remarque :
o Les opérateurs logiques ET et OU sont commutatifs, associatifs et distributifs
o Les opérateurs de comparaison entre variables donnent un résultat logique

14
26/09/2021

3. Types de variables
Type logique :
Théorème fondamentale :
Soit A une expression logique dont la valeur peut être Vrai ou Faux
• A Ou Vrai = ……..
• A Ou ˥A = ………
• A ET ˥A = ………
• A Et Vrai = ………
• A Ou Faux = ………
• A Ou A = ………
• A Et Faux = ………
• A Et A = ………

15

3. Types de variables
Type intervalle :
• Une variable de type intervalle est une variable dont les valeurs sont
encadrées entre une valeur minimale et une valeurs maximale.
• Le type intervalle est personnalisé, et doit être défini dans le bloc
Type qui précède la déclaration des variables.
Syntaxe de déclaration :
Type Type_intervalle = borne_inf .. borne_sup
Var non_var : Type_intervalle
Exemple :
Type Mois = 1 .. 12
Var M : Mois
16
26/09/2021

3. Types de variables
Ordre de priorité des opérateurs :
• A chaque catégories d’opérateurs est associé un ordre de priorité. En effet, l’évaluation d’une
expression se fait en respectant l’ordre de priorité croissante des opérateurs.
• Si les parenthèses n’existe pas dans une expression, et les opérateurs ont la même ordre de
priorité, l’évaluation se fait alors de gauche à droite.
Ordre de Catégories d’opérateurs Opérateurs
priorité
1 Les parenthèses (,)
2 Les opérateurs unaires +, -
3 La puissance **
4 Les opérateurs multiplicatifs *, /, Mod, Div
5 Les opérateurs additifs +, -
6 Les opérateurs comparatifs <, <=,>, >=, =, <>
7 La négation logique NON
8 L’intersection ET
9 L’union OU

17

4. Instruction algorithmique
Définition :
• Une instructions est un ordre donnée par l’utilisateur à l’ordinateur.
• Les données manipulées par les instructions peuvent prendre
plusieurs forme :
o Des constantes
o Des variables
o Des expressions
• Les instructions peuvent être simples ou complexes
• on distingue trois instructions algorithmique simples : l’affichage, la
saisie et l’affectation

18
26/09/2021

4. Les instruction simple


Affichage :
• C’est une instruction de SORTIE. Elle permet de communiquer un message ou le contenu
d’une ou plusieurs variables à l’utilisateur sur l’écran.
Syntaxe :
ecrire ( arg1, arg2, …, argN)
Avec argi peut être :
o Identificateur d’une variable ou constante
o Une expression arithmétique
o Un message

exemple : soit x une variable qui contient la valeur entière 13


ecrire("le successeur de ", x, " est ", x+1)
envoie à l’écran le résultat de 4 expressions ; on pourra lire : “ le successeur de 13 est 14 ”.

19

4. Les instruction simple


Saisie :
• C’est une instruction d’ENTREE. Elle permet de placer dans la case mémoire
correspondante à une variable une valeur saisie par l’utilisateur à l’ordinateur.
• L’exécution de cette instruction implique l’arrêt momentané de l’exécution de
l’algorithme en attente d’une valeur donnée par l’utilisateur
Syntaxe :
lire ( var1, var2, …, varN)
On peut saisir chaque variable à part, comme peut saisir plusieurs variables avec le
même ordre
lire (A)
lire (B) lire (A, B, C)
lire (C)
Exemple : écrire (« donner votre nom : »)
lire ( nom)

20
26/09/2021

4. Les instruction simple


Affectation :
• C’est une opération qui permet de mettre une valeur dans une case mémoire
relative à une variable.
• La variable peut être le contenu : une autre variable, une constante, une valeur
donnée, expression arithmétique ou logique
Syntaxe :
non_varaible  expression
• Dans une instruction d’affectation, il s’agit de ranger l’expression à droit dans le
membre à gauche
Exemple :
A5
B3

21

4. Les instruction simple


Une expression :
• Une expression est un ensemble de valeurs, reliées par des opérateurs, et
équivalent a une seule valeur.
Exemple :
A5
B  A+3
CA+B

22
26/09/2021

Exemple
Exemple 1 : écrire un algorithme permettant d’afficher le périmètre d’un cercle.

Exemple 2 : écrire un algorithme permettant d’afficher la moyenne d’un étudiant


pour une matière. Par matière, l’étudiant a une note de devoir et une note
d’examen ayant respectivement les coefficient 0,4 et 0,6.

Exemple 3 : faire un tournage à la main de l’algorithme suivant :


Algorithme exemple 1
Var A, B, C : entier
Début
A5
B6
CA+B
B  A +C
AA*3
BA+C
Fin

23

Exemple
Exemple 4 : écrire un algorithme de permutation de deux entiers A et B :

• En utilisant une variable C supplémentaire

• Sans utilisation d’ une variable C supplémentaire

24

Vous aimerez peut-être aussi