0% ont trouvé ce document utile (0 vote)
96 vues23 pages

Guide du Pseudocode en Algorithmes

Ce guide présente les conventions algorithmiques pour le pseudocode destiné aux enseignants et élèves du secondaire en Tunisie pour l'année scolaire 2024/2025. Il couvre divers aspects tels que la présentation du pseudocode, les types de données, les structures de contrôle, les modules, et les opérations communes. Chaque section fournit des exemples pratiques pour illustrer les concepts abordés.

Transféré par

Nizar Abdellatif
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)
96 vues23 pages

Guide du Pseudocode en Algorithmes

Ce guide présente les conventions algorithmiques pour le pseudocode destiné aux enseignants et élèves du secondaire en Tunisie pour l'année scolaire 2024/2025. Il couvre divers aspects tels que la présentation du pseudocode, les types de données, les structures de contrôle, les modules, et les opérations communes. Chaque section fournit des exemples pratiques pour illustrer les concepts abordés.

Transféré par

Nizar Abdellatif
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

Guide de Pseudocode selon les Conventions Algorithmiques

Tunisiennes
Ministère de l'Éducation - Tunisie
Direction Générale des Programmes et de la Formation Continue

Destiné aux enseignants et élèves du secondaire


Année scolaire 2024/2025

Table des matières


1. Le pseudocode dans les épreuves

2. Variables, constantes et types de données


3. Les tableaux

4. Les enregistrements
5. Opérations communes

6. Structures de contrôle conditionnelles


7. Structures de contrôle itératives

8. Les modules (Procédures et Fonctions)

9. Gestion des fichiers

1. Le pseudocode dans les épreuves

1.1 Style et présentation


Le pseudocode est présenté avec une police à espacement fixe pour garantir une lisibilité optimale. La
taille de la police reste cohérente dans tout le document.

1.2 Indentation
Les lignes sont indentées (généralement par trois espaces) pour indiquer qu'elles sont contenues dans
une instruction d'une ligne précédente. L'indentation améliore la lisibilité du code et met en évidence la
structure logique de l'algorithme.

1.3 Casse et conventions


Les mots-clés sont en majuscules : SI , POUR , PROCÉDURE , ALGORITHME

Les identificateurs utilisent la notation mixte avec des majuscules pour marquer le début des
nouveaux mots : NombreEtudiants , MoyenneClasse

Les commentaires sont précédés par //


1.4 Numérotation des lignes
Lorsqu'il est nécessaire de numéroter les lignes pour s'y référer, les numéros de ligne sont présentés à
gauche du pseudocode avec un espacement suffisant.

1.5 Commentaires
Les commentaires sont précédés par deux barres obliques // . Le commentaire continue jusqu'à la fin de
la ligne.

Exemple - Commentaires :

// Ce module calcule la moyenne d'une classe


// et affiche le résultat
PROCÉDURE CalculerMoyenne()
DEBUT
Somme ← 0 // Initialiser la somme des notes
// Boucle pour saisir les notes
PROCÉDURE

2. Variables, constantes et types de données

2.1 Types de données simples


Les types de données de base reconnus sont :

Entier : un nombre entier

Réel : un nombre pouvant contenir une partie fractionnaire

Caractère : un seul caractère

Chaîne de caractères : une séquence de zéro ou plusieurs caractères


Booléen : les valeurs logiques Vrai et Faux

2.2 Littéraux
Les littéraux des types de données ci-dessus s'écrivent comme suit :

Entier : Écrit normalement en base décimale, par exemple 5, -3

Réel : Toujours écrit avec au moins un chiffre de chaque côté de la virgule, par exemple 4,7, 0,3, -4,0

Caractère : Un seul caractère délimité par des apostrophes, par exemple 'x', 'A', '@'

Chaîne : Délimitée par des guillemets, par exemple "Ceci est une chaîne", ""

Booléen : Vrai, Faux

2.3 Identificateurs
Les identificateurs (noms donnés aux variables, constantes, procédures et fonctions) utilisent la casse
mixte. Ils ne peuvent contenir que des lettres (A-Z, a-z), des chiffres (0-9) et le caractère de soulignement
(_). Ils doivent commencer par une lettre.

2.4 Déclaration des objets - TDO (Tableau de Déclaration des Objets)


Il est obligatoire de déclarer explicitement toutes les variables dans un TDO.

Format du TDO :

TDO
Objet Type/Nature
Nom_variable Type_variable

Exemple - TDO simple :

TDO
Objet Type/Nature
Compteur Entier
NoteMoyenne Réel
EstReussi Booléen
NomEtudiant Chaîne de caractères

2.5 Forme générale d'un algorithme

ALGORITHME Nom_Algorithme

TDO
Objet Type/Nature
Variable1 Type1
Variable2 Type2

DEBUT
Traitements
FIN

Exemple complet :
ALGORITHME CalculerMoyenneEtudiant

TDO
Objet Type/Nature
Note1 Réel
Note2 Réel
Note3 Réel
Moyenne Réel

DEBUT
Écrire("Saisir la première note :")
Lire(Note1)
Écrire("Saisir la deuxième note :")
Lire(Note2)
Écrire("Saisir la troisième note :")
Lire(Note3)

Moyenne ← (Note1 + Note2 + Note3) / 3

Écrire("La moyenne est :", Moyenne)


FIN

2.6 Affectations
L'opérateur d'affectation est ← .

Format :

Identificateur ← Valeur

Exemples :

Compteur ← 0
Compteur ← Compteur + 1
MontantTotal ← NbHeures * TauxHoraire

3. Les tableaux

3.1 Déclaration des tableaux


Les tableaux sont des structures de longueur fixe composées d'éléments de type identique, accessibles
par des indices consécutifs. L'indice du premier élément est généralement 0.

TDO pour les tableaux :


Tableau à une dimension :

TDO
Objet Type/Nature
Nom_tableau Tableau de N Type_élément

Tableau à deux dimensions :

TDO
Objet Type/Nature
Nom_tableau Tableau de N lignes * M colonnes Type_élément

Exemples de déclarations :

TDO
Objet Type/Nature
NotesEtudiants Tableau de 30 Réel
Damier Tableau de 8 lignes * 8 colonnes Caractère

3.2 Utilisation des tableaux


Les valeurs d'index des tableaux peuvent être des valeurs littérales ou des expressions qui s'évaluent à
une valeur entière valide.

Exemple - Utilisation des tableaux :


ALGORITHME GestionNotes

TDO
Objet Type/Nature
NotesEtudiants Tableau de 5 Réel
i Entier
Somme Réel
Moyenne Réel

DEBUT
// Saisie des notes
Pour i de 0 à 4 Faire
Écrire("Entrer la note de l'étudiant", i+1, ":")
Lire(NotesEtudiants[i])
Fin Pour

// Calcul de la moyenne
Somme ← 0
Pour i de 0 à 4 Faire
Somme ← Somme + NotesEtudiants[i]
Fin Pour
Moyenne ← Somme / 5

Écrire("La moyenne de la classe est :", Moyenne)


FIN

4. Les enregistrements

4.1 Définition des enregistrements


Un enregistrement est un type de données composé qui peut contenir plusieurs champs de types
différents.

TDO pour les enregistrements :

TDO
Objet Type/Nature
Nom_enregistrement Enregistrement
Nom_champ1 : Type_champ1
Nom_champ2 : Type_champ2
...
Fin

Exemple de déclaration :
TDO
Objet Type/Nature
Etudiant Enregistrement
Nom : Chaîne de caractères
Prenom : Chaîne de caractères
Age : Entier
Moyenne : Réel
Fin

4.2 Utilisation des enregistrements


Les champs individuels sont accessibles en utilisant la notation pointée.

Exemple - Utilisation des enregistrements :


ALGORITHME GestionEtudiant

TDO
Objet Type/Nature
Etudiant1 Enregistrement
Nom : Chaîne de caractères
Prenom : Chaîne de caractères
Age : Entier
Moyenne : Réel
Fin
Etudiant2 Enregistrement
Nom : Chaîne de caractères
Prenom : Chaîne de caractères
Age : Entier
Moyenne : Réel
Fin

DEBUT
// Saisie des informations du premier étudiant
Écrire("Nom de l'étudiant :")
Lire([Link])
Écrire("Prénom de l'étudiant :")
Lire([Link])
Écrire("Âge de l'étudiant :")
Lire([Link])
Écrire("Moyenne de l'étudiant :")
Lire([Link])

// Copie complète de l'enregistrement


Etudiant2 ← Etudiant1

// Affichage
Écrire("Informations copiées :")
Écrire("Nom :", [Link])
Écrire("Prénom :", [Link])
FIN

5. Opérations communes

5.1 Entrée et sortie


Entrée :

Lire(Objet)
Sortie :

Écrire("Message", Objet, Expression)


Écrire_nl("Message", Objet, Expression) // avec retour à la ligne

Exemple :

ALGORITHME ExempleEntreeSortie

TDO
Objet Type/Nature
Reponse Entier
Score Entier
Vies Entier

DEBUT
Lire(Reponse)
Écrire(Score)
Écrire("Il vous reste", Vies, "vies")
FIN

5.2 Opérations arithmétiques


Les symboles d'opérateurs arithmétiques standard sont utilisés :

Opération Opérateur

Addition +

Soustraction -

Multiplication *

Division /

Division entière Div

Reste de division Mod


 

5.3 Opérations de comparaison


Opération Opérateur

Égal =

Différent ≠

Supérieur >

Supérieur ou égal ≥

Inférieur <

Inférieur ou égal ≤
 

5.4 Opérateurs logiques


Les opérateurs logiques utilisés sont : Et, Ou, Non

5.5 Fonctions prédéfinies

Fonctions sur les chaînes de caractères

Fonction Rôle

Long(ch) Retourne la longueur de la chaîne

Pos(ch1, ch2) Retourne la position de ch1 dans ch2

Sous_chaine(ch, d, f) Retourne une partie de la chaîne

Majus(ch) Convertit en majuscules


 

Exemple :

ALGORITHME ManipulationChaines

TDO
Objet Type/Nature
Texte Chaîne de caractères
Longueur Entier
SousChaine Chaîne de caractères

DEBUT
Texte ← "Bonjour Tunisia"
Longueur ← Long(Texte)
SousChaine ← Sous_chaine(Texte, 0, 7)

Écrire("Texte :", Texte)


Écrire("Longueur :", Longueur)
Écrire("Sous-chaîne :", SousChaine)
FIN
6. Structures de contrôle conditionnelles

6.1 Structure conditionnelle simple

Si Condition Alors
Traitement
FinSi

6.2 Structure conditionnelle complète

Si Condition Alors
Traitement1
Sinon
Traitement2
FinSi

Exemple :

ALGORITHME VerificationAge

TDO
Objet Type/Nature
Age Entier

DEBUT
Écrire("Entrez votre âge :")
Lire(Age)

Si Age ≥ 18 Alors
Écrire("Vous êtes majeur")
Sinon
Écrire("Vous êtes mineur")
FinSi
FIN

6.3 Structure conditionnelle généralisée


Si Condition1 Alors
Traitement1
Sinon Si Condition2 Alors
Traitement2
Sinon Si Condition3 Alors
Traitement3
Sinon
TraitementN
FinSi

6.4 Structure à choix multiples

Selon Sélecteur
Valeur1 : Traitement1
Valeur2 : Traitement2
Valeur3 . . Valeur5 : Traitement3
Sinon TraitementN
Fin Selon

Exemple :
ALGORITHME MenuCalculatrice

TDO
Objet Type/Nature
Choix Caractère
A Réel
B Réel
Resultat Réel

DEBUT
Écrire("Entrez deux nombres :")
Lire(A)
Lire(B)
Écrire("Choisissez l'opération (+, -, *, /) :")
Lire(Choix)

Selon Choix
'+' : Resultat ← A + B
'-' : Resultat ← A - B
'*' : Resultat ← A * B
'/' : Si B ≠ 0 Alors
Resultat ← A / B
Sinon
Écrire("Division par zéro impossible")
FinSi
Sinon Écrire("Opération non reconnue")
Fin Selon

Écrire("Résultat :", Resultat)


FIN

7. Structures de contrôle itératives

7.1 Boucle Pour (itération complète)

Pour Compteur de Début à Fin [Pas = valeur_pas] Faire


Traitement
Fin Pour

Exemple :
ALGORITHME TableMultiplication

TDO
Objet Type/Nature
Nombre Entier
i Entier

DEBUT
Écrire("Entrez un nombre :")
Lire(Nombre)

Écrire("Table de multiplication de", Nombre)


Pour i de 1 à 10 Faire
Écrire(Nombre, "x", i, "=", Nombre * i)
Fin Pour
FIN

7.2 Boucle Tant que (pré-condition)

Tant que Condition Faire


Traitement
Fin Tant que

7.3 Boucle Répéter (post-condition)

Répéter
Traitement
Jusqu'à Condition

Exemple :
ALGORITHME JeuDevinette

TDO
Objet Type/Nature
NombreSecret Entier
Proposition Entier
Tentatives Entier

DEBUT
NombreSecret ← Aléa(1, 100)
Tentatives ← 0

Écrire("Devinez le nombre entre 1 et 100")

Répéter
Écrire("Votre proposition :")
Lire(Proposition)
Tentatives ← Tentatives + 1

Si Proposition > NombreSecret Alors


Écrire("Trop grand !")
Sinon Si Proposition < NombreSecret Alors
Écrire("Trop petit !")
FinSi
Jusqu'à Proposition = NombreSecret

Écrire("Bravo ! Trouvé en", Tentatives, "tentatives")


FIN

8. Les modules (Procédures et Fonctions)

8.1 Les Procédures


Déclaration :

Procédure Nom_procédure (pf1 : type1, pf2 : type2, ..., pfn : typen)

TDO
Objet Type/Nature
Variable_locale Type_variable

DEBUT
Traitement
FIN
Appel :

Nom_procédure (pe1, pe2, ..., pen)

Exemple :
Procédure AfficherInfosEtudiant (Nom : Chaîne de caractères, Moyenne : Réel)

TDO
Objet Type/Nature
Mention Chaîne de caractères

DEBUT
Si Moyenne ≥ 16 Alors
Mention ← "Très Bien"
Sinon Si Moyenne ≥ 14 Alors
Mention ← "Bien"
Sinon Si Moyenne ≥ 12 Alors
Mention ← "Assez Bien"
Sinon Si Moyenne ≥ 10 Alors
Mention ← "Passable"
Sinon
Mention ← "Insuffisant"
FinSi

Écrire("Étudiant :", Nom)


Écrire("Moyenne :", Moyenne)
Écrire("Mention :", Mention)
FIN

// Algorithme principal
ALGORITHME PrincipalEtudiant

TDO
Objet Type/Nature
NomEtudiant Chaîne de caractères
MoyenneEtudiant Réel

DEBUT
Écrire("Nom de l'étudiant :")
Lire(NomEtudiant)
Écrire("Moyenne :")
Lire(MoyenneEtudiant)

AfficherInfosEtudiant(NomEtudiant, MoyenneEtudiant)
FIN

8.2 Les Fonctions


Déclaration :
Fonction Nom_fonction (pf1 : type1, pf2 : type2, ..., pfn : typen) : Type_résultat

TDO
Objet Type/Nature
Variable_locale Type_variable

DEBUT
Traitement
Retourner Résultat
FIN

Appel :

Objet ← Nom_fonction (pe1, pe2, ..., pen)

Exemple :
Fonction CalculerMoyenne (Note1 : Réel, Note2 : Réel, Note3 : Réel) : Réel

TDO
Objet Type/Nature
Somme Réel
Moyenne Réel

DEBUT
Somme ← Note1 + Note2 + Note3
Moyenne ← Somme / 3
Retourner Moyenne
FIN

// Algorithme principal
ALGORITHME UtilisationFonction

TDO
Objet Type/Nature
N1 Réel
N2 Réel
N3 Réel
MoyenneCalculee Réel

DEBUT
Écrire("Entrez trois notes :")
Lire(N1)
Lire(N2)
Lire(N3)

MoyenneCalculee ← CalculerMoyenne(N1, N2, N3)


Écrire("La moyenne est :", MoyenneCalculee)
FIN

8.3 Passage de paramètres


Par valeur : paramètre standard

Par référence : précédé du symbole @

Exemple avec passage par référence :


Procédure EchangerValeurs (@A : Entier, @B : Entier)

TDO
Objet Type/Nature
Temp Entier

DEBUT
Temp ← A
A←B
B ← Temp
FIN

9. Gestion des fichiers

9.1 Fichiers texte


Les fichiers texte consistent en lignes de texte lues ou écrites consécutivement sous forme de chaînes.

TDO pour fichiers :

TDO
Objet Type/Nature
Nom_fichier Fichier Texte

Opérations principales :

Ouvrir("Chemin\Nom_physique", Nom_logique, "Mode")

Lire(Nom_logique, ch) ou Lire_ligne(Nom_logique, ch)

Écrire(Nom_logique, ch) ou Écrire_nl(Nom_logique, ch)

Fin_fichier(Nom_logique)

Fermer(Nom_logique)

Modes d'ouverture :

"r" : Lecture

"w" : Écriture (création)

"a" : Ajout à la fin

Exemple :
ALGORITHME GestionFichierNotes

TDO
Objet Type/Nature
FichierNotes Fichier Texte
Ligne Chaîne de caractères
NomEtudiant Chaîne de caractères
Note Réel

DEBUT
Ouvrir("C:\Ecole\[Link]", FichierNotes, "w")

Répéter
Écrire("Nom de l'étudiant (ou 'fin' pour terminer) :")
Lire(NomEtudiant)

Si NomEtudiant ≠ "fin" Alors


Écrire("Note :")
Lire(Note)
Ligne ← NomEtudiant + " : " + Convch(Note)
Écrire_nl(FichierNotes, Ligne)
FinSi
Jusqu'à NomEtudiant = "fin"

Fermer(FichierNotes)
Écrire("Fichier sauvegardé avec succès")
FIN

9.2 Fichiers de données


Les fichiers de données contiennent des enregistrements de longueur fixe.

TDO pour fichiers de données :

TDO
Objet Type/Nature
Nom_fichier Fichier de Type_élément

Modes d'ouverture :

"rb" : Lecture (pointer au début)

"wb" : Écriture (création)

"ab" : Ajout à la fin

Exemple :
ALGORITHME GestionFichierEtudiants

TDO
Objet Type/Nature
FichierEtudiants Fichier de Enregistrement
Nom : Chaîne de caractères
Prenom : Chaîne de caractères
Moyenne : Réel
Fin
UnEtudiant Enregistrement
Nom : Chaîne de caractères
Prenom : Chaîne de caractères
Moyenne : Réel
Fin

DEBUT
Ouvrir("C:\Ecole\[Link]", FichierEtudiants, "wb")

Répéter
Écrire("Nom de l'étudiant (ou 'fin' pour terminer) :")
Lire([Link])

Si [Link] ≠ "fin" Alors


Écrire("Prénom :")
Lire([Link])
Écrire("Moyenne :")
Lire([Link])
Écrire(FichierEtudiants, UnEtudiant)
FinSi
Jusqu'à [Link] = "fin"

Fermer(FichierEtudiants)
FIN

Index des mots-clés et symboles


Symbole/Mot-clé Usage

← Affectation

+ Addition

- Soustraction

* Multiplication

/ Division

Div Division entière

Mod Modulo

= Égalité

≠ Différent

> Supérieur

≥ Supérieur ou égal

< Inférieur

≤ Inférieur ou égal

Et Conjonction logique

Ou Disjonction logique

Non Négation logique

ALGORITHME Début d'algorithme

DEBUT Début de traitement

FIN Fin de traitement

TDO Tableau de Déclaration d'Objets

Si...Alors...FinSi Structure conditionnelle

Selon...Fin Selon Choix multiples

Pour...Fin Pour Boucle déterminée

Tant que...Fin Tant que Boucle pré-conditionnelle

Répéter...Jusqu'à Boucle post-conditionnelle

Procédure Déclaration de procédure

Fonction Déclaration de fonction

Retourner Retour de fonction

Lire Opération d'entrée

Écrire Opération de sortie

// Commentaire
 

© Ministère de l'Éducation - Tunisie 2024


Ce guide est destiné à l'usage pédagogique dans les établissements scolaires tunisiens.

Vous aimerez peut-être aussi