Vous êtes sur la page 1sur 58

FACULTE DES SCIENCES AIN CHOCK ‫كلية العلوم عين الشق‬

UNIVERSITE HASSAN II DE CASABLANCA


‫جامعة الحسن الثاني بالدار البيضاء‬

Algorithmique

2021-2022

Présenté par Rachid KINTA 1


Ch. 1 Introduction et notions

Objectifs
Définir les concepts clés
❑ Algorithme
❑ Programme
❑ Ordinateur
❑ Information

2
Ch. 1

⮚ 1.L'algorithme :
Est une suite finie d’instructions élémentaires
permettant de résoudre un problème quelconque.

Origine

Nom d’un mathématicien perse du


IXème siècle :
‫الخوارزمي‬
3
Ch. 1

⮚ 2.L'algorithmique :

• Du pseudo-code : Une façon de décrire un


algorithme en un langage presque naturel.
• Pas de normalisation de l'écriture en pseudo-code
(comparé aux langages de programmation), juste
quelques conventions partagées par un grand
nombre.

4
Ch. 1

⮚ 3.Le programme :
Est une suite finie d’instructions élémentaires
permettant de résoudre un problème quelconque,
exécutable par un ordinateur.

Ecrit dans un langage de programmation :


• Compris par l’ordinateur

Exemples: C, C#, C++, Python, JAVA …

5
Ch. 1

Pourquoi ne pas étudier directement un langage de


programmation ?
Ecrire un algorithme nous permet principalement de:
• Rester focalisé sur la logique du programme, sans se
soucier des particularités du langage.
• Une algorithme est compris par tout informaticien,
même s’il ne connait pas le langage du programme.

6
Ch. 1

⮚ 4.L’ordinateur :
Est un système de traitement de l'information
programmable, composé entre autres de :
• Unité centrale de traitement (UCT, CPU,
Processeurs)
• Mémoire pour stocker les données à traiter (RAM)
• Unités d’entrées et de sorties (E/S) pour
communiquer avec l’extérieur à travers des
périphériques ( Clavier, Scanner, disque dur,
imprimante, souris …)
7
Ch. 1

⮚ 5.L’information :
Est une donnée interprétée portant sur un objet, on
peut aussi la définir comme étant une donnée avec un sens.

Exemples: Nom d’un étudiant, son âge, rayon d’un


cercle …

8
Ch. 1

▪ Traitement de l’information par l’ordinateur:


Peut être décomposé en 4 types de traitements :
-Saisie des données (Entrée) : clavier …
-Mémorisation des données (Stockage)
-Opérations sur les données : Calculs arithmétique, Tri,…
-Restitution des résultats / Affichage des résultats (Sortie):
Ecran, fichier, imprimante…

9
Ch. 2 Initiation à l'algorithmique
Objectifs
Maîtriser les concepts clés:
❑ Données
❑ Variables
❑ Constantes
❑ Instructions

10
Ch. 2
Exemple d'algorithme :
Algorithme: ElèveAuCarré
{Algorithme qui calcule le carré du nombre que lui fournit l’utilisateur}

{Déclarations :
Variables Nombre, Carre : entiers Réservation d'espace mémoire}
{Préparation du traitement}
Début
Ecrire("Quel nombre voulez vous élever au carré?")
Lire(unNombre) {Traitement: Calcul du carré}

Carre 🡨 unNombre × unNombre {Présentation du résultat}

Ecrire ("son carré est ", Carre)


11
Ch. 2

Etapes d'un algorithme :

▪ Préparation du traitement
• Données nécessaires à la résolution du programme
▪ Traitement
• Résolution pas à pas
• Après décomposition en sous problèmes si nécessaire
▪ Edition des résultats
• Impression à l'écran
• Dans un fichier, etc…

12
Ch. 2

Langage algorithmique : un Pseudo-code


Algorithme <Nom de l'Algorithme> Algorithme Bonjour
{ceci est un commentaire} {Affiche bonjour en anglais}
Début Exemple Début
…Actions Ecrire("Hello world")
Fin Fin

Quelques Remarques:
• Il faut avoir une écriture rigoureuse
• Il faut avoir une écriture soignée: respecter l'indentation
• Il est important de commenter les algorithmes
• Il existe plusieurs solutions algorithmiques à un problème posé, il
faut rechercher l'efficacité de ce que l'on écrit.
13
Ch. 2

Déclaration des données (Variables)

Variable <nom de données> : <type>


À remplacer

• Instruction permettant de réserver de l'espace mémoire (Ram)


pour stocker des données
• Toute variable doit être déclarée avant de pouvoir l'utiliser
• Le nom de la variable (appelé aussi Etiquette) est une chaine de
caractère constituée de lettres ('a'..'z' ; 'A'..'Z'), chiffres ('0'..'9'),
et du caractère '_' (souligné / underscore)
• Le nom de la variable ne peut pas commencer avec un chiffre !
• On évitera les caractères accentués dans les noms de variables
• Le nom de la variable doit être différent d'un des mots clé
14
Ch. 2

Déclaration des données (Variables) : Suite

Variable <nom de données> : <type>


• Le type désigne l'ensemble des valeurs qu'on peut stocker dans
la variable.
• Si plusieurs variables ont le même type, on peut les déclarer sur
la même ligne séparées par des virgules.
• On s'intéresse aux types les plus utilisés qui sont:
• Booléen (Vrai, Faux)
• Entier (1, -1, 6…)
• Réel (0.1, -63.24 …)
• Caractère( 'a','!' …) { un seul caractère écrit entre ' ' }
• Chaine de caractères ("Bonjour",…) {Suite de caractères
15 entre guillemets}
Ch. 2

Déclaration des données : Exemples


Quelques exemples de déclarations de variables :

Variable V, Rayon, Surface: Réel


n : Entier
nom, prenom : Chaine de caractères

• A noter que l'on peut utiliser comme noms pour les variables
a, b, c, x, etc… il reste cependant préférable d'utiliser des noms
significatifs

16
Ch. 2

Assignation de valeurs aux variables:


Assigner (affecter) une valeur à une variable se fait sous la forme :

<Nom de la Variable> 🡨 <valeur à assigner>

• Il est nécessaire de déclarer la variable avant de lui assigner une


valeur !
Exemples : T1 T2

Variable T1,T2 : Réel


T1 T2
T1 🡨 23.5 23.5

T1 T2
T2 🡨 T1 23.5 23.5
17
Ch. 2

Déclaration des données (Constantes)

Constante <nom de données> : <type> 🡨 <valeur ou expression>

• Instruction permettant de réserver l'espace mémoire pour


stocker une constante dont la valeur ne varie pas
• On initialise sa valeur directement à l'aide de l'opérateur 🡨 (On
peut retrouver l'opérateur = dans certaines notations)

• Exemples :
Constante Max : Entier 🡨10
DeuxFoisMax : Entier 🡨 Max × 2

18
Ch. 2

Lecture et Ecriture des données


• Lire(<Nom de la variable où stocker les données>)
• Ecrire(<Message ou variables a afficher>)
A. Lire : Instruction permettant de récupérer les données
fournies par l'utilisateur et de les stocker dans une variable
déclarée auparavant.
(Le programme lit les données à partir de l'entrée standard :
le clavier par défaut)

B. Ecrire : Instruction permettant d'afficher soit la valeur d'une


variable, soit un message personnalisé (Le message doit être
écrit entre guillemets ""). (Certaines notations utilisent
Afficher)
19
Ch. 2

Lecture et Ecriture des données : Exemples

• Variable Age : Entier


Affiche
• Ecrire("Saisir votre âge : ") Saisir votre âge :

• Lire (Age) Attend que l'utilisateur rentre une valeur


exemple : 20

• Ecrire("Vous avez rentré la valeur : ", Age)


Affiche

Vous avez rentré la valeur : 20


20
Exercices :
A. Ecrire un algorithme qui demande à l'utilisateur de saisir son nom
et prénom, puis les affiche sous la forme :

Bonjour <prénom> <nom> !

B. Ecrire un algorithme qui demande à l'utilisateur de saisir 2 entiers


A et B , qui échange la valeur des 2 variables, puis affiche le contenu
de chacune d'entre elles.

21
Ch. 2

Notion d'expression :
Une Expression est toute combinaison logique :
• De variables,
• De valeurs,
• D'opérateurs (+, -, /, …)
• D'autres symboles tel que ( )
Exemples : Contre-Exemples :
• 1 2*+3
• 7+3 (2+5*2
• rayon * rayon * pi
• (pi * rayon ) * 2
22
Ch. 2

Les opérateurs :
Un opérateur est une fonction définie par:
• Son arité : désigne le nombre de variables d'entrée
• Sa position : il peut être préfixe (devant) , infixe (milieu),
ou postfixe (derrière)
• Son type : désigne le type de ses entrées et celui de sa
sortie.
Exemple : l'opérateur d'addition sur les entiers : +
• opérateur binaire, infixe, dont le type est :

+ : entier + entier 🡪 entier

23
Ch. 2

Les opérateurs sur les types simples :


Arithmétiques (entiers) : Arithmétiques (réels) :
Toutes les entrées sont des Au moins une entrée est un réel,
entiers, la sortie est un entier la sortie est un réel

Nom Symbole Nom Symbole


Addition + Addition +
Soustraction - Soustraction -
Multiplication * Multiplication *
Division entière / Division /
Reste mod Inversion de -
signe
Inversion de -
signe
Si on a 2 entiers, Aussi noté %, Si on a 2
A=3, B=4 entiers, A=17 et B=10
A / B est égal à 0 A mod B est égal à 7
24
Ch. 2

Les opérateurs sur les types simples :


Ordres des opérateurs :
Les opérateurs suivants sont ordonnés du plus prioritaire au moins
prioritaire dans l'évaluation d'une expression arithmétique:
1. Les parenthèses
2. "-" unaire (inversion de signe)
3. Les opérateurs de multiplication " * " et de division " / " et le modulo
"mod"
4. Les opérateurs d'addition " + " et de soustraction " - "
Remarque:
Si l'ordre entre les opérateurs dans une expression est le même,
l'expression est évaluée de gauche à droite.
Exemples:
• 3*2+4 = 6+4 =10
• 3*(2+4) = 3*6 =18
• 25 mod 10 * 3 =(25 mod 10) * 3= 5 * 3= 15
25
Ch. 2

Les opérateurs sur les types simples :


Comparaison : Logique
Les deux entrées sont des Toutes les entrées sont des
entiers, caractères (ou chaines), ou booléens, la sortie est un booléen
réels, la sortie est un booléen
Nom Symbole Nom Symbole
Est égal à = Conjonction et
Est différent de != Disjonction ou
Est plus petit que < négation non
Est plus grand que >
Est plus petit ou égal à <=
Exemples :
• (9 > 7) et (3<4) : Vrai
Est plus grand ou égal >=
à • (A = 0) ou (B = 0) : ?
Exemples :
• 3 != 4 : Vrai Booléen Booléen
• 9 >= 10 : Faux
26
Ch. 2

Les opérateurs sur les types simples :


Quelques rappels : Tables de Vérité

A B A ET B A B A OU B
Vrai Vrai Vrai Vrai Vrai Vrai
Vrai Faux Faux Vrai Faux Vrai
Faux Vrai Faux Faux Vrai Vrai
Faux Faux Faux Faux Faux Faux

A Non A

Vrai Faux

Faux Vrai

27
Ch. 3 Structures de contrôle
Objectifs
Maîtriser les :
❑ Structures d'alternatives
▪ Si … Sinon …
▪ Selon …
❑ Boucles
▪ Tantque …
▪ Répéter … Tantque…
▪ Pour … 28
Ch. 3

Structure alternative : Si… Alors … Sinon … FinSi


Exemple:

Algorithme: TestPositif
{Algorithme qui nous dit si l'entier saisit par l'utilisateur est positif}
Variables Nombre : entiers
Début
Ecrire("Saisir un entier :")
Lire(Nombre)
Si Nombre > 0 Alors
Ecrire("L'entier saisit est positif")
FinSi
Fin
29
Ch. 3

Structure alternative : Si… Alors … FinSi


Syntaxe :
Si <Expression logique> Alors
Instruction1 …
Instruction2 … Bloc d'instructions

FinSi

• Si l'expression logique (la condition) prend la valeur Vrai, le bloc


d'instructions est exécuté
• Si elle prend la valeur Faux, rien n'est fait.

30
Ch. 3

Structure alternative : Si… Alors … Sinon … FinSi


Syntaxe :
Si <Expression logique> Alors
Instruction1 …
Instruction2 …

Sinon Instructions…
FinSi

• Si l'expression logique (la condition) prend la valeur Vrai, le bloc


d'instructions est exécuté
• Si elle prend la valeur Faux, le second bloc (bloc du sinon) est
exécuté
31
Ch. 3

Structure alternative Imbriquées:


• Exemple de problème :
Afficher:
• "Mention : Très Bien" si la note est supérieure à 16
• "Mention : passable" si elle est supérieure à 10 et inférieure à
16

Si note>=16 Alors
Ecrire("Mention : très bien")
Sinon Si note>=10 Alors
Ecrire("Mention : passable")
Finsi
Finsi
32
Exercices :
▪ Ecrire un algorithme qui demande un nombre à l’utilisateur, et
l’informe ensuite si ce nombre est positif ou négatif ( et si
l'utilisateur rentre un 0, affiche un message personnalisé )

▪ Ecrire un algorithme qui nous donne la valeur absolue d'un réel


saisit par l'utilisateur

▪ Ecrire un algorithme qui teste si une année est bissextile ou pas


(l'année est bissextile si est divisible par 4 et pas par 100 , ou par 400)

▪ Ecrire un algorithme qui demande deux nombres à l’utilisateur et


l’informe ensuite si leur produit est négatif ou positif (on laisse de
côté le cas où le produit est nul). Attention toutefois : on ne doit pas
calculer le produit des deux nombres.
33
Ch. 3
Sélection choix multiples : Selon …
Syntaxe :
Selon (<Sélecteur>)
Cas <liste de valeurs 1> : Instructions 1
Cas <liste de valeurs 2> : Instructions 2

[autres: Instructions…]
FinSelon
• La valeur du sélecteur (le plus souvent une variable) est évaluée: Si elle
égale à la valeur du cas 2 (ou est comprise dans l'intervalle de valeurs 2), les
instructions 2 sont exécutées, puis l'exécution se poursuit après le FinSelon
• Devant "Cas", il peut y avoir une seule valeur (ex : 'A'), une suite de valeurs
séparées par des virgules (ex: 1, 3, 8) et/ou un intervalle de valeurs (ex: 1..99)
• Si la valeur de la variable est différente des valeurs traitées dans les cas, les
instructions de "autres" sont exécutées si présentes.
34
Ch. 3
Sélection choix multiples : Selon …
Syntaxe :
Selon (<Sélecteur>)
Cas <liste de valeurs 1> : Instructions 1
Cas <liste de valeurs 2> : Instructions 2

[autres: Instructions…]
FinSelon

Remarques:
• Le sélecteur (la variable) doit avoir le même type que les valeurs devant
les cas.
• Dans le cas d'utilisation d'une liste de valeurs, les listes doivent être
disjointes.

35
Ch. 3
Sélection choix multiples : Selon …
Exemple : Un programme qui affiche le mois correspondant au nombre saisi par
l'utilisateur
En utilisant si sinon : En utilisant selon :
Si Mois=1 Alors Selon (Mois)
Ecrire("Janvier ") Cas 1 : Ecrire("Janvier ")
FinSi Cas 2 : Ecrire("Février ")
Si Mois=2 Alors Cas 3 : Ecrire("Mars")
Ecrire("Février ") Cas 4 : Ecrire("Avril")
FinSi Cas 5 : Ecrire("Mai ")
. Cas 6 : Ecrire("Juin")
. Cas 7 : Ecrire("Juillet")
. Cas 8 : Ecrire("Août")
Cas 9 : Ecrire("Septembre")
Si Mois=12 Alors Cas 10 : Ecrire("Octobre")
Ecrire("Décembre") Cas 11 : Ecrire("Novembre")
FinSi Cas 12 : Ecrire("Décembre")
FinSelon

36
Exercices (selon) :

A. Ecrire un programme qui affiche à l'utilisateur les menus


disponibles dans un restaurant :
1 : "Menu du jour"
2 : "Menu végétarien"
3 : "Menu enfants"
4 : "Menu à la carte"
Le programme doit demander par la suite à l'utilisateur de choisir
une option, puis affirme le choix qui a été pris avec un message.

B. Ecrire un algorithme qui lit un opérateur op ( +, - , * , / ) et deux


entiers a et b , puis affiche le nom de l'opération ainsi que son
résultat ( a op b )

37
Ch. 3
Structures itératives ( Boucles ) : Introduction
Définition:
Une boucle est une suite d'instructions qui itèrent ( se
répètent) jusqu'à satisfaire une condition ou un nombre de fois
défini.

On distingue 3 types de boucles :


Tantque <Condition> faire répéter pour <var> 🡨 <début> à <fin> faire

Instruction1; Instruction1; Instruction1;


Instruction2; Instruction2; Instruction2;
.. .. ..

FinTantque Tantque <Condition> FinPour

38
Ch. 3
Structures itératives : Tantque … faire
Syntaxe :
Initialisation des variables utilisées
<Initialisation>
dans la condition
Tantque <Condition> faire
Instruction1;
Bloc d'instructions à exécuter Tant que
Instruction2;
la condition est vraie
..
Instruction de relance;
On doit avoir une instruction qui
FinTantque
modifie la variable de la condition,
pour pouvoir sortir de la boucle.

Fonctionnement:
La condition est une expression logique évaluée dès le début:
• Si la condition est vraie, le bloc d'instructions est exécuté.
• Si la condition est fausse, le bloc d'instruction est sauté.
• à la fin du bloc d'instructions, le programme retourne sur la ligne de la
condition
39
Ch. 3
Structures itératives : Tantque … faire
Syntaxe :
<Initialisation>
Tantque <Condition> faire
Instruction1;
Instruction2;
..
Instruction de relance;
FinTantque
Quelques remarques:
• Les variables utilisées dans la condition doit être initialisée avant le "Tantque"
• Si la condition est toujours vraie , le programme tombe dans une boucle infinie :
il continuera à n'exécuter que la boucle sans passer aux instruction suivantes,
d'où l'intérêt de l'instruction de relance (qui peut être un simple compteur
incrémenté de 1 à chaque itération pour s'arrêter à un certain seuil par
exemple)

40
Ch. 3
Structures itératives : Tantque … faire
Algorithme: BoucleSomme
{Algorithme qui continue à faire la somme de nombres introduits par l'utilisateur, s'arrête à la lecture de -1}
Variables Valeur, Total : entiers
Début
Total 🡨0
Ecrire("Saisir une valeur, -1 pour finir:")
Lire(Valeur)
Tantque Valeur != -1 faire
Total 🡨 Total + Valeur
Ecrire("Saisir une autre valeur, -1 pour finir:")
Lire(Valeur)
Fintantque
Ecrire(" La somme des valeurs saisies est : ", Total)
41
Fin
Exercices (Boucles):

▪ Ecrire un algorithme qui demande à l'utilisateur un nombre


compris entre 1 et 3 jusqu'à ce que la réponse convienne
▪ Ecrire un algorithme qui affiche le résultat de la somme 1+2+3+…
+n . n étant un entier saisi par l'utilisateur
▪ Ecrire un programme qui demande un nombre de départ , et qui
calcule sa factorielle
Nb: la factorielle de 8 est notée 8! Et vaut :
1x2x3x4x5x6x7x8
▪ Ecrire un algorithme qui affiche les diviseurs d'un nombre lu au
clavier. Utiliser l'opérateur (mod).

42
Ch. 3
Structures itératives : répéter … Tantque
Syntaxe :
répéter
Instruction1;
Bloc d'instructions à exécuter Tant que
Instruction2;
la condition est vraie
..
Instruction de relance; On doit avoir une instruction qui
Tantque <condition> modifie la variable de la condition,
pour pouvoir sortir de la boucle.

Fonctionnement:
La condition est évaluée à la fin:
• Le bloc d'instructions est exécuté une fois.
• La condition est évaluée : si elle est vrai, on retourne exécuter le bloc
d'instructions
• Si elle est fausse, on continue l'exécution des lignes après la boucle.
43
Ch. 3
Structures itératives : répéter … Tantque
Syntaxe :
répéter
Instruction1;
Instruction2;
..
Instruction de relance;
Tantque <condition>

Remarque:
• Etant donné que l'évaluation de la condition se fait à la fin , le bloc d'instruction
est toujours exécuté au moins une fois.

44
Ch. 3
Structures itératives : répéter … tantque
Algorithme: BoucleSomme
{Algorithme qui continue à faire la somme de nombres introduits par l'utilisateur, s'arrête à la lecture de -1}
Variables Valeur, Total : entiers
Début
Total 🡨0
répéter
Ecrire("Saisir une valeur, -1 pour finir:")
Lire(Valeur)
Si Valeur != -1 Alors
Total 🡨 Total + Valeur
Finsi
Tantque Valeur != -1
Ecrire(" La somme des valeurs saisies est : ", Total)
45
Fin
Ch. 3
Structures itératives : pour …
Syntaxe :
pour <var_compteur> 🡨 <val_début> à <val_fin> faire
Instruction1;
Instruction2;
..
Finpour

Fonctionnement:
répète les instructions un certain nombre de fois :
1. Le compteur est initialisée à la valeur initiale.
2. Les instructions sont exécutées.
3. Le compteur est incrémenté de 1.
4. l'algorithme vérifie si la variable <= val_fin , si oui, les instructions sont ré-
exécutées, si non la boucle s'arrête.
La boucle s'arrête quand le compteur dépasse la borne supérieure (val_fin).
46
Ch. 3
Structures itératives : pour …
Exemple :
Algorithme: Affiche:1..10
variables i : entier
Début
pour i 🡨 1 à 10 faire
Ecrire(i)
Finpour
Fin

Remarque:
Le traitement ne doit pas modifier la variable de la boucle
pour i 🡨 1 à 10 faire

i 🡨 10
Finpour

47
Ch. 3
Structures itératives : pour … [avec pas modifié]
Syntaxe :
pour <var_compteur> 🡨 <val_début> à <val_fin> [par <val_pas>] faire
Instruction1;
Instruction2;
..
Le compteur est incrémenté par
Finpour <condition> cette valeur appelée le pas

Remarques:
• Le pas correspond à la valeur avec laquelle on incrémente le compteur à
chaque itération
• [par <valeur_pas>] est optionnelle : Si non spécifiée, le pas par défaut est 1.

48
Ch. 3
Structures itératives : laquelle choisir ?
La 1ère question à se poser : connaît t-on le nombre d'itération?
>Si on connaît d'avance le nombre d'itérations, on préfère utiliser
une boucle pour.

Dans le cas où ce nombre est inconnu ou difficile à déterminer


on se pose la question suivante: Doit-on exécuter la boucle au
moins une fois ?
>Si la réponse à cette question est oui , on utilise généralement une
boucle Répéter..tantque.
>Si la réponse est non , on utilise une boucle TantQue.

49
Exercices (Boucles):
Utiliser la boucle la plus convenable pour :
▪ Ecrire un algorithme qui demande à l'utilisateur un nombre compris
entre 1 et 3 jusqu'à ce que la réponse convienne
▪ Ecrire un programme qui demande un nombre de départ , et qui
calcule sa factorielle
▪ Ecrire un algorithme qui demande successivement 20 nombres à
l’utilisateur, et qui lui dit ensuite quel était le plus grand parmi ces
20 nombres. Exemple d'exécution:
Entrez le nombre numéro 1 : 12
Entrez le nombre numéro 2 : 14

Entrez le nombre numéro 20 : 6
Le plus grand de ces nombres est : 14

50
Exercice :

▪ On veut réécrire l'exercice B du slide 37 : Exercices (Selon) de


telle sorte à ce que le programme boucle sur le menu jusqu'à ce
que l'utilisateur saisisse le caractère '@' .
Ainsi, le programme :
• Affiche le menu d'opérations à l'utilisateur et attend sa saisie.
• Si le caractère saisi est '@' on arrête le menu
• Si le caractère saisi est un opérateur , on lit 2 entiers et affiche le
résultat de l'opération, puis retourne sur le menu

51
Ch. 4 Les tableaux

52
Ch. 4

Les tableaux:
Définition :
Un tableau est une structure de données qui permet de
stocker un certain nombre de valeurs du même type. Il nous
permet d'accéder à plusieurs cases mémoires à l'aide d'un seul
nom.
Comme toutes les cases portent le même "nom" , elles se
différencient par un indice.

53
Ch. 4
Les tableaux:
Déclaration :

Variable Tableau <nom_tab>[<taille>] : <type>

Exemple :
Tableau pour stocker les notes de 10 étudiants :
Variable Tableau Notes[10] : Réel
Réserve l'espace mémoire pour
10 réels

Notes
0 1 2 3 4 5 6 7 8 9
54
Ch. 4
Les tableaux:
Notions et Remarques :
• On doit préciser la taille n du tableau lors de sa création : le
nombre de valeurs qu'on peut stocker dedans.
• l'indice du 1er élément est 0 ( les cases du tableau sont
numérotées à partir de 0)
• L'indice du dernier élément est n-1 : (n étant la taille du
tableau)

• L'indice est un entier, quel que soit le langage, Tab[3.14]


n'existe pas

55
Ch. 4
Les tableaux:
Manipulation : Affectation
L'accès à un élément du tableau se fait en écrivant le nom du
tableau suivi de l'indice de l'élément entre crochets [ ]

Si on reprend l'exemple précédent :


Pour affecter la note 20 au premier étudiant, on écrit :

Notes[0] 🡨 20

Notes 20
0 9

56
Ch. 4
Les tableaux:
Manipulation : Lecture
On peut également lire les valeurs saisies et les stocker
directement dans le tableau :

Si on veut prendre la note de l'étudiant 4 à partir du clavier :

Lire(Notes[3])

Notes 19 14 13 16
0 3 9

57
Ch. 4
Les tableaux:
Manipulation : Affichage
De la même manière on peut afficher les éléments du tableau
qu'on souhaite :

Pour afficher la note du dernier étudiant :

Ecrire(Notes[9])

Notes 19 14 13 16 .. .. .. .. .. 17.5
0 9

58

Vous aimerez peut-être aussi