Vous êtes sur la page 1sur 17

Algorithmes et structures de

données
Dr I.BEQQALI HASSANI

1
A propos du cours
Objectif:
L’objectif de ce cours consiste à :
• Construire un programme efficace et prouver qu’il réalise le calcul attendu
• Maitriser différentes structures de données
• Evaluer la complexité d’un programme
Organisation:
• Cours
• Exercices
• Contrôle continu
• Examen Final
Support de Cours:
• Support de cours sous format PDF
• Prise de note
2
Chapitre 1

Rappel des bases de l’algorithmique

3
Qu’est ce qu’un algorithme?
• Un algorithme est une suite d’instructions permettant à un système informatique
d’exécuter une tâche donnée.

Un algorithme contient :
• une description des données à manipuler ;
• une suite d’actions à mener sur ces données.

4
Qu’est ce qu’un algorithme?
Exemple :
Vous êtes dans une école, pour réussir une matière les étapes suivantes sont primordiales:

• Présence des étudiants


• Présence du professeur
• Le professeur doit expliquer le cours
• Les étudiants doivent suivre le professeur
• Les étudiants doivent appliquer le cours à travers des TD ou bien des TP
• Le professeur doit préparer un examen afin de tester les connaissances des étudiants
• Les étudiants doivent se préparer avant l’examen
• Les étudiants doivent être présents et concentrés le jour de l’examen

Résultat :
• Matière réussie 5
Structure de données
• L’objectif des algorithmes est la manipulation des informations afin d’avoir le
résultat souhaité

• En plus de manipuler l'information, il faut aussi la stocker. La manière dont on


organise cette information stockée peut avoir des conséquences très importantes
sur leur manipulation.

6
Structure de données
Les variables
• Dans un programme informatique, on va avoir en permanence besoin de stocker
provisoirement des valeurs.

Il peut s’agir de données issues du :


• disque dur,
• fournies par l’utilisateur (frappées au clavier),
• de résultats obtenus par le programme, intermédiaires ou définitifs

• Ces données peuvent être de plusieurs types : des nombres, du texte, date…

• Dès que l’on a besoin de stocker une information au cours d’un programme, on utilise
une variable.

7
Structure de données
Les variables
Déclaration des variables
Types numériques classiques

• Tous les langages offrent un « bouquet » de types numériques, dont le détail est
susceptible de varier légèrement d’un langage à l’autre. On retrouve cependant les
types suivants :

8
Structure de données
Les variables
Déclaration des variables
Types numériques classiques
Rappel :
Une information binaire (symbolisée couramment par 0 ou 1) s’appelle un bit. Un
groupe de huit bits s’appelle un octet (en anglais, byte)
Nom Description
Byte (octet) Contient un nombre entier (sans partie décimale = nombre après la virgule) sur 1 octet

Entier simple Contient un nombre entier sur 2 octets


Entier long Idem entier simple sur 4 octets

Réel simple Contient un nombre en virgule sur 4 octets

Réel double Idem réel simple sur 8 octets

9
Structure de données
Les variables
Déclaration des variables
Types numériques classiques

• En algorithmique, on ne se tracassera pas trop avec les sous-types de variables


numériques. On se contentera donc de préciser qu'il s'agit d'un nombre, en
gardant en tête que dans un vrai langage, il faudra être plus précis.

• En pseudo-code, une déclaration de variables aura la syntaxe suivante:

Variable g en Numérique
Ou encore
Variables PrixHT, TauxTVA, PrixTTC en Numérique

10
Structure de données
Les variables
Déclaration des variables
Autres types numériques :

Certains langages autorisent d’autres types numériques, notamment :

• le type monétaire (avec strictement deux chiffres après la virgule). Exemple :


23,00$

• le type date (jour / mois / année). Exemple : 28/02/2015

11
Structure de données
Les variables
Déclaration des variables
Type alphanumérique:

• En algorithmique, on dispose également du type alphanumérique (également


appelé type caractère, type chaîne ou en anglais, le type string ).

• Dans une variable de ce type, on stocke des caractères, qu’il s’agisse de lettres, de
signes de ponctuation, d’espaces, ou même de chiffres.

12
Structure de données
Les variables
Déclaration des variables
Type alphanumérique:

Remarque :
• En pseudo-code, une chaîne de caractères est toujours notée entre guillemets

Exemple :
• "86 Rue saint michel, Paris " représente une chaine de caractère
• " 1233547 " représente une chaine de caractère

13
Structure de données
Les variables
Déclaration des variables
Type booléen :

• Le dernier type de variables est le type booléen : on y stocke uniquement les


valeurs logiques VRAI et FAUX.

• On peut représenter ces notions abstraites de VRAI et de FAUX par tout ce qu'on
veut : de l'anglais (TRUE et FALSE) ou des nombres (0 et 1).

14
L’instruction d’affectation
Syntaxe et signification
• La seule chose qu’on puisse faire avec une variable c’est de lui affecter des valeurs ,
c’est-à-dire lui attribuer une valeur

• En pseudo-code, l'instruction d'affectation se note avec le signe ←

Exemple :
Variable X en Numérique
Début
X ← 24
Fin

• On attribue la valeur 24 à la variable X.


15
L’instruction d’affectation
Syntaxe et signification
• On peut sans aucun problème attribuer à une variable la valeur d’une autre variable,
telle qu’elle est ou modifiée

Exemple1 :
Donnez à la variable X la valeur 24, ensuite donnez à la variable Total1 la même valeur de X

Solution
Variable X, Total1 en Numérique
Début
X ← 24
Total1 ← X
Fin

Résultat :
Total1=24 16
L’instruction d’affectation
Syntaxe et signification
Exemple2 :
Donnez à la variable X la valeur 24, ensuite donnez à la variable Y la valeur de X plus 2

Solution
Variable X, Total1 en Numérique
Début
X ← 24
Total1 ← X + 2
Fin

Résultat :
Total1=26

17

Vous aimerez peut-être aussi