Vous êtes sur la page 1sur 35

Algorithme et structure de Données

Ada Ibrahim ALKASSOUM


Doctorant en informatique
Notion de variable et de données

Un algorithme ou un programme manipule des


informations c’est-à-dire les données.
On distingue deux types de données. Les variables et les
constantes .Comme leur nom l’indique, les variables
sont des données qui pourront varier (dont la valeur
pourra changer) durant l’exécution du programme. A
l’inverse les « constantes » ont une valeur constante tout
au long de l’exécution du programme.
Le type de donnée

Un type de donnée est l’ensemble dans lequel une donnée


prend ses valeurs. On distingue trois grands types de
donnée. Le type entier, réel et caractère.
– Le type entier est une donnée qui prend ses valeur dans
l’ensemble Z
– Le type réel est une donnés qui prend ses valeurs dans
l’ensemble R
– Le type caractère : un caractère peut être une lettre
majuscule ou minuscule, un chiffre, un signe de
ponctuation ou un espace. Chaque caractère est codé sur un
octet représentant son code ASCII ( American Standard
Code Information for Interchange)
On écrit les caractères usuels entre guillemet
Le type de donnée

Une chaine de caractère est une suite quelconque de


caractère entourée d’apostrophes. Cette suite pourra être
vide ou de longueur un (1) ou de longueur supérieur à 1
si elle contient une apostrophe celle-ci doit être double.
Exemple : ‘’toto’’
Les variables

Définition et caractéristiques
Une variable informatique est différente d’une variable
mathématique. En informatique une variable est une case
mémoire destinée à contenir des valeurs d’un type
particuliers.
Elle est définie par son nom (identificateur) composé de
lettres de l’alphabet et des chiffres avec obligation de
commencer des lettres ou les caractères.
Il est recommandé d’avoir des noms significatifs et moins
long. Les caractères suivants sont interdits : l’espace, les
opérateurs arithmétiques, les caractères de ponctuations, les
parenthèses, les crochets ….
Déclaration d’une variable

Pour déclarer une variable on utilise la syntaxe suivante.


Type de variable nom_variable
Exemple :
entier x
reel y,z, t
Déclarer une variable constante revient à associer un
nom à une valeur.
const nom_variable valeur
Notion d’Affectation

Une affectation consiste à placer une valeur dans une


variable. L’opérateur d’affectation est le symbole flèche
«←»
La syntaxe est la suivante
Nom_variable ← valeur ou expression
Les instructions de lecture / Ecriture

Notion de lecture
L’instruction de lecture fait partie des opération
d’entrée / sortie réalisées par le programme. Elle
consiste à lire une valeur au clavier et affecter à
la variable.
– La syntaxe est la suivante
– Lire / saisir ( nom_variable)
– Lire /saisir (var1, var2, …)
Notion d’écriture

Elle permet d’afficher à l’ecran la valeur contenu dans


une variable ou une chaine de caractère placés entre
double quotte(‘’ ‘’).
Les syntaxes possible d’utilisation de l’instruction
d’écriture sont les suivantes :
Afficher / ecrire (‘’ chaine ‘’)
Afficher / ecrire ( nom_var)
Afficher / ecrire (var1, var2, ….)
Structure générale d’un algorithme

La structure générale d’un algorithme est la suivante


ALGO nom_algo
Variables
Déclaration des variables
Début
/* les instructions */
Fin
Exemples :

Une bille de plomb est lâchée du haut d’un immeuble et en chute libre.
Au bout d’un temps t (exprimé en secondes), la bille est descendue
d’une hauteur (en mètre)
H = ½ g .t2 avec g = 9,81(exprimé en (m.s-2))

Écrire un programme qui calcule la hauteur descendue au bout d’un


temps t saisi au clavier.

Écrire un programme qui calcule la durée totale de la chute connaissant


la hauteur totale h de l’immeuble saisie au clavier.

Écrire un programme qui affiche le chiffre des dizaines d’un nombre


saisi au clavier. Même question pour les centaines.
FONCTIONS_UTILISEES
2 VARIABLES
3 t EST_DU_TYPE NOMBRE
4 g EST_DU_TYPE NOMBRE
5 h EST_DU_TYPE NOMBRE
6 DEBUT_ALGORITHME
7 g PREND_LA_VALEUR 9.81
8 AFFICHER "Entrer le temps"
9 LIRE t
10 h PREND_LA_VALEUR 0.5*g*t*t
11 AFFICHER "la hauteur = "
12 AFFICHER h
13 FIN_ALGORITHME
FONCTIONS_UTILISEES
2 VARIABLES
3 t EST_DU_TYPE NOMBRE
4 g EST_DU_TYPE NOMBRE
5 h EST_DU_TYPE NOMBRE
6 DEBUT_ALGORITHME
7 g PREND_LA_VALEUR 9.81
8 AFFICHER "Entrer la hauteur"
9 LIRE h
10 t PREND_LA_VALEUR sqrt((2*h)/g)
11 AFFICHER "le temps = "
12 AFFICHER t
13 FIN_ALGORITHME
FONCTIONS_UTILISEES
2 VARIABLES
3 x EST_DU_TYPE NOMBRE
4 c EST_DU_TYPE NOMBRE
5 d EST_DU_TYPE NOMBRE
6 DEBUT_ALGORITHME
7 AFFICHER "Entrer la valeur de x"
8 LIRE x
9 c PREND_LA_VALEUR floor(x/100)%10
10 d PREND_LA_VALEUR floor(x/10)%10
11 AFFICHER "la partie centaine = "
12 AFFICHER c
13 AFFICHER "la partie dizaine = "
14 AFFICHER d
15 FIN_ALGORITHME
Exemple
Une société désire calculer le montant mensuel du
remboursement de frais de déplacement des
représentants. Ce montant est calculé sur la base d’une
indemnité kilométrique de 3000 f.
Les informations suivantes sont disponibles pour le
mois de septembre
Nom de Représentant total de km
parcouru
Sani 2500
Fati 1500
Nana 1200
VARIABLES
3 nom EST_DU_TYPE CHAINE
4 km EST_DU_TYPE NOMBRE
5 indem EST_DU_TYPE NOMBRE
6 DEBUT_ALGORITHME
7 AFFICHER "Afficher le nom "
8 LIRE nom
9 AFFICHER "Entrer le kilometre parcouru"
10 LIRE km
11 indem PREND_LA_VALEUR km*3000
12 AFFICHER "le nom de representant : "
13 AFFICHER nom
14 AFFICHER "les kilometres parcouru: "
15 AFFICHER km
16 AFFICHER "Indemnité mensuel: "
17 AFFICHER indem
18 FIN_ALGORITHME
Les structures conditionnelles
(Alternatives)
Une structure conditionnelle permet de formaliser dans
un programme, des cas ou des instructions ne sont
exécutées que si une expression conditionnelle
préalablement évaluée prend la valeur de vérité « vrai ».
La structure alternative partage une partie des actions à
exécuter en deux ou plusieurs sous-ensembles dont
l’exécution se fait de manière exclusive.
L’instruction SI

On distingue principalement les conditions


Si …….. alors et si …….alors …..sinon
Condition si …..alors
La syntaxe est la suivante
Si (condition) alors
Instructions
Finsi
L’instruction SI

Condition si ……alors …..sinon


La syntaxe de déclaration est la suivante

Si (condition) alors
Instructions
Sinon
Instructions
finsi
L’instruction SI

Exemple
1. Ecrire un algorithme qui permet d’afficher une
valeur x si celle-ci est inférieure à 7
2. Ecrire un algorithme qui permet d’afficher le triple
de x si celle-ci est supérieure à 11 sinon son double.
3. Ecrire un programme qui indique si un nombre
entier lu au clavier est pair ou impair.
VARIABLES
3 y EST_DU_TYPE NOMBRE
4 x EST_DU_TYPE NOMBRE
5 DEBUT_ALGORITHME
6 AFFICHER "Entrer la valeur de x"
7 LIRE x
8 SI (x>11) ALORS
9 DEBUT_SI
10 y PREND_LA_VALEUR 3*x
11 AFFICHER y
12 FIN_SI
13 SINON
14 DEBUT_SINON
15 y PREND_LA_VALEUR 2*x
16 AFFICHER y
17 FIN_SINON
18 FIN_ALGORITHME
VARIABLES
3 x EST_DU_TYPE NOMBRE
4 DEBUT_ALGORITHME
5 LIRE x
6 SI (x%2==0) ALORS
7 DEBUT_SI
8 AFFICHER x
9 AFFICHER " est pair"
10 FIN_SI
11 SINON
12 DEBUT_SINON
13 AFFICHER x
14 AFFICHER " est impair"
15 FIN_SINON
16 FIN_ALGORITHME
Structure conditionnelle imbriquée

Plusieurs structure alternatives peuvent être imbriquée


si bien que dans un traitement peut figurer une ou
plusieurs structure alternative.
Pour une meilleur lisibilité de programme on utilise
l’indentation qui consiste à écrire les instructions sur de
ligne différentes en procédant au décalage.
Structure conditionnelle imbriquée

Exemple
Soit une équation du seconde degré ax2+bx +c = 0. Ecrire un
algorithme qui détermine les nombres de solutions
Ecrire un algorithme qui saisit la moyenne d’un étudiant puis
affiche :
« Très bien » si elle supérieur ou égale à 16
« Bien » si elle est inférieur à 16 mais supérieur ou égale à 14
« Assez Bien » si elle est inférieur à 14 mais supérieur ou
égale à 12
« Passable » si elle est inférieur à 12 mais supérieur ou égale à
10
« Insuffisant » dans tous les autre cas
Le choix multiple

L’instruction se présente comme une alternative, en


effet elle n’offre que deux choix possible dépendant de
la valeur d’une condition ( valeur vrai ou fausse).
En algorithmique nous disposons aussi d’une instruction
permettant d’effectuer un choix entre plusieurs décision.
C’est le cas de l’instruction selon.
Le choix multiple

La syntaxe générale est la suivante


Selon (choix)
Cas 1 :
Instructions
Cas 2 :
Instructions
…..
Autre cas
Instructions
Fin selon
Le choix multiple

La sémantique de la structure de choix est la suivante :


Quand « expression logique de cas 1 est vrai « action 1» est
exécuté les cas 2 à n+1 seront ignorés
Par contre quand « expression logique » du cas 1 est fausse on
passe au cas 2.
On test l’expression logique comme précédemment et ainsi de
suite jusqu’à qu’une expression soit vrai.
Exemple
Ecrire un algorithme qui affiche le message relatif à des
options choisie de la requete *141#
NB : la structure de choix offre une meilleure lisibilité que par
une expression que l’expression par des si ….alors ….sinon
imbriqués
Les structures répétitives

Les programmes informatiques utilisent les structures


de contrôle répétitives appelé aussi BOUCLE pour
résoudre des problèmes qui nécessitent d’exécuter une
ou plusieurs instruction en plusieurs cycle jusqu’à
l’obtention d’un résultat recherché. Ces structures sont
de deux types :
Les structures répétitives

La structure répétitive avec compteur à travers laquelle la


répétition des itérations se fait un nombre de fois donnée à
l’avance par une valeur numérique ou par une variable
c’est le cas de la structure POUR
La structure répétitive conditionnelle à laquelle la
répétition des itérations est contrôlé par une expression
logique. Les cycles se poursuivent tant que cette
expression logique appelée aussi condition est vrai. Les
cycles prennent fin des que l’expression est fausse.
L’expression logique est évalué à chaque itération c’est le
cas de structure TANT QUE
Les structures répétitives

La boucle POUR
Cette structure permet de répeter une action un nombre
connu de fois.
La syntaxe est la suivante
Pour « variable compteur » allant de « expression
debut » à « expression fin » faire
Instructions
Fin pour
Les structures répétitives

Action :
« variable » est une variable assimilée à un compteur
qui est automatiquement augmente ou diminue
Au debut « variable » prend la valeur de « expression
debut » le bloc d’instruction est exécuté jusqu’ace que
« expression début » prenne la valeur de « expression
fin »
Exemple
Ecrire un algorithme qui permet de calculer la somme
de 100 premiers entiers
Les structures répétitives

La Boucle TANT QUE


La syntaxe est la suivante
Tantque (expression logique) faire
Instructions
Fintantque
Action : on teste d’abord si « expression logique » est
vraie. Dans ce cas on exécute « instruction » puis on
boucle de nouveau sur le teste de « expression logique »
Par contre si « expression logique » est fausse la boucle se
termine et le programme poursuit son exécution après
fintant que.
Les structures répétitives

Exemple
Ecrire un programme qui affiche n fois le message
« Bonjour »
Les structures répétitives

La boucle Repeter ….jusqu’a


La syntaxe est la suivante
Répeter
Instructions
Jusqu’à (expression logique)

Action : le bloc « instructions » est exécuté


L’expression logique est testée
Dans le cas où elle est égale à faux, on recommence au début
Dans le cas où elle est égale a vrai le programme se poursuit
son exécution après l’instruction « jusqu’à »
Les structures répétitives

Exemple : Ecrire un programme qui calcule le factoriel


d’un entier n

Vous aimerez peut-être aussi