Professional Documents
Culture Documents
Cours D'algo
Cours D'algo
1. Définition
C'est une notation formelle utilisée pour écrire des programmes informatiques. Les
langages de programmation permettent aux développeurs de communiquer avec
l'ordinateur en utilisant des mots et des symboles compréhensibles par celui-ci. Les
exemples de langages de programmation populaires incluent Python, Java, C++,
JavaScript, etc.
Les ordinateurs sont des machines électroniques qui traitent et stockent des données de
manière efficace. Ils sont composés d'un processeur, de mémoire, de périphériques
d'entrée/sortie et d'un système d'exploitation. Au fil des années, les ordinateurs ont
connu plusieurs générations, caractérisées par des avancées technologiques telles que
l'intégration de transistors, l'amélioration des capacités de stockage et des performances
de calcul. Les ordinateurs ont une importance cruciale dans la conception, le
déploiement et l'exécution des programmes, car ils permettent l'automatisation des
tâches, l'analyse de données complexes et la création de solutions logicielles pour divers
domaines d'activité.
Activité 2 : Structure d’un algothmique simple
1. L'entête de l'algorithme :
Il indique le nom de l'algorithme et éventuellement les paramètres d'entrée/sortie.
Exemple :
ALGORITHME NomDeLAlgorithme
ENTREE
Parametre1 : Type
Parametre2 : Type
SORTIE
Resultat : Type
DEBUT
// Instructions de l'algorithme
// ...
// ...
2. Les déclarations :
Elles permettent de définir les variables et les constantes utilisées dans l'algorithme. La
déclaration d’un ou des variables commence toujours par le mot réservé VAR.
Exemple :
ALGORITHME ExempleDeclarations
// Déclarations
VAR
Variable1 : Entier
Variable2 : Chaine
PI : Constante Reel = 3.14159
DEBUT
// Instructions de l'algorithme
FIN
Dans un langage de programmation réel, la syntaxe pour déclarer des variables et des
constantes peut varier en fonction du langage, mais l'idée fondamentale reste la même :
vous devez spécifier le nom de la variable ou de la constante, ainsi que son type de
données.
La section de déclarations est importante car elle vous permet de préparer les variables
et les constantes nécessaires à l'exécution de l'algorithme. Ces variables et constantes
seront utilisées dans les instructions de l'algorithme pour effectuer des calculs, stocker
des données, etc.
3. Les variables :
Ce sont des emplacements en mémoire utilisés pour stocker des valeurs temporaires.
Les variables sont des emplacements en mémoire qui servent à stocker des valeurs
temporaires, que ce soit des nombres, des chaînes de caractères, des objets, etc. Voici
un exemple simple en pseudo-code montrant comment déclarer des variables dans un
algorithme :
ALGORITHME ExempleVariables
ENTREE
// Déclaration des paramètres d'entrée
Parametre1, Parametre2 : Entier
Parametre3 : Reel
Parametre4 : Chaine
// Déclarations de variables
Variable1, Variable2 : Entier
Tableau1 : Tableau d'Entiers [1..10]
NombreDecimal : Reel
Texte : Chaine
DEBUT
FIN
4. Les constantes :
Ce sont des valeurs qui ne peuvent pas être modifiées pendant l'exécution de
l'algorithme. La déclaration d’un ou des constantes commence toujours par le mot
réservé CONST.
Elles sont souvent utilisées pour stocker des valeurs fixes ou des paramètres qui ne
devraient pas changer. Voici un exemple simple en pseudo-code montrant comment
déclarer et utiliser des constantes:
Exemple :
ALGORITHME ExempleConstantes
// Déclaration de constantes
CONSTANTE Entier VALEUR_FIXE = 42
CONSTANTE Reel PI = 3.14159
CONSTANTE Chaine MESSAGE_BIENVENUE = "Bonjour, monde"
DEBUT
// Utilisation des constantes
AFFICHER "La valeur de VALEUR_FIXE est : " + VALEUR_FIXE
AFFICHER "La valeur de PI est : " + PI
AFFICHER "Message de bienvenue : " + MESSAGE_BIENVENUE
FIN
5. Les identificateurs :
Ce sont les noms donnés aux variables, aux constantes et aux autres éléments de
l'algorithme. Ils doivent respecter certaines règles (par exemple, commencer par une
lettre et ne pas contenir de caractères spéciaux).
Exemple:
ALGORITHME ExempleIdentificateurs
// Exemples d'identificateurs VALIDES
CONSTANTE Reel PI = 3.14159
Entier nombreDeJoueurs
Chaine nomDeFamille
Tableau d'Entiers tableauDeScores[1..10]
ALGORITHME ExempleZonesMemoire
// Déclaration d'un tableau
VAR
Tableau d'Entiers MonTableau[1..5]
DEBUT
// Affectation de valeurs aux éléments du tableau
MonTableau[1] <- 10
MonTableau[2] <- 20
MonTableau[3] <- 30
MonTableau[4] <- 40
MonTableau[5] <- 50
FIN
Opérateurs arithmétiques :
+ : addition
- : soustraction
* : multiplication
/ : division
% : modulo (reste de la division entière)
** : puissance
Opérateurs de comparaison :
== : égal à
!= : différent de
< : inférieur à
<= : inférieur ou égal à
> : supérieur à
>= : supérieur ou égal à
Opérateurs logiques :
&& : ET logique
|| : OU logique
! : NON logique
Opérateurs d'assignation :
= : affectation simple
+= : affectation avec addition
-= : affectation avec soustraction
Opérateurs de concaténation :
+ : concaténation de chaînes de caractères
Opérateurs conditionnels :
? : : opérateur ternaire permettant de retourner une valeur conditionnellement
Ces opérateurs sont utilisés pour effectuer des opérations arithmétiques, des
comparaisons, des assignations de valeurs, des opérations logiques et des manipulations
de chaînes de caractères.
Les priorités sur les opérateurs : certains opérateurs sont prioritaires par rapport à
d'autres, ils sont exécutés en premier. Par exemple, la multiplication a une priorité plus
élevée que l'addition.
Exercice d’application 1 :
Écrire un algorithme qui calcule la circonférence d'un cercle en utilisant une constante
pour la valeur de π. Demander à l'utilisateur de saisir le rayon du cercle en entrée.
ALGORITHME CalculerCirconference
VAR
Rayon : Reel
resultat : Reel
CONSTANTE Reel PI = 3.14159
DEBUT
// Saisie du rayon
Afficher ("Veuillez saisir le rayon du cercle : ")
Saisir Rayon
// Calcul de la circonférence
resultat <- 2 * PI * Rayon
// Affichage du résultat
Afficher ("La circonférence du cercle est : ", resultat)
FIN
Exercice d’application 2 :
Écrire un algorithme qui demande à l'utilisateur de saisir un nombre entier, utilise des
opérateurs pour vérifier si ce nombre est pair ou impair, puis affichez le résultat.
ALGORITHME VerifierParite
VAR
Nombre : Entier
EstPair : Booleen
DEBUT
Traitement Linéaire :
Un traitement linéaire est un processus ou une méthode qui suit une séquence
d'étapes ou d'actions ordonnées, généralement de manière continue et prévisible.
Il est souvent utilisé pour résoudre des problèmes ou atteindre des objectifs de
manière séquentielle, avec chaque étape dépendant de la précédente.
Les résultats d'un traitement linéaire sont généralement prévisibles, car les étapes
sont exécutées dans un ordre fixe et déterminé.
Traitement Alternatif :
Exemple :
Imaginez que vous souhaitiez décider comment passer votre journée en fonction de la
météo. Voici comment cela pourrait être géré de manière linéaire et alternative :
Traitement Linéaire :
Traitement Alternatif :
Dans ce scénario, vous avez des choix supplémentaires lorsque la météo est pluvieuse,
et votre décision finale dépendra de vos préférences personnelles et des conditions
spécifiques du moment.
Le traitement linéaire suit un schéma fixe, tandis que le traitement alternatif offre plus
de flexibilité en fonction des conditions ou des préférences personnelles, permettant de
prendre des décisions en cours de route en fonction de diverses options disponibles.
Activité 2 : Les formes usuelles de traitements alternatifs (Si, Selon ou Suivant Cas)
L'activité 2 porte sur les formes usuelles de traitements alternatifs, tels que les structures
de contrôle conditionnelles. Trois formes couramment utilisées pour gérer des
alternatives dans un programme informatique sont les instructions "Si" (ou "if" en
anglais), "Selon" (ou "switch" en anglais), et "Suivant Cas" (ou "else if" en anglais).
Voici une explication de chacune de ces formes :
1. Si :
A. La structure conditionnelle
Syntaxe :
Si <condition> ALORS
<Action 1>
FSI
B. La structure alternative
L'instruction "Si" est utilisée pour effectuer un traitement alternatif basé sur une
condition. Si une condition est vraie, une série d'instructions est exécutée. Sinon, une
autre série d'instructions peut être exécutée ou le programme peut passer à une autre
étape.
Syntaxe :
Si <condition> ALORS
<Action 1>
Sinon
<Action 2>
FSI
Écrivez un programme qui prend en compte l'âge d'un utilisateur et affiche un message
en fonction de l'âge. Si l'utilisateur a moins de 18 ans, le programme affiche "Vous êtes
mineur". Sinon, il affiche "Vous êtes majeur".
Algorithme GestionAge
VAR
age : Entier
Début
Afficher ("Veuillez entrer votre âge :")
Saisir age
Si ( age <= 18 ) Alors
Afficher ("Vous êtes mineur.")
Sinon
Afficher ("Vous êtes majeur.")
Fin Si
Fin
Exercice 2 : Utilisation de l'instruction "Si"
Écrire un algorithme qui demande à l'utilisateur de saisir un nombre entier, puis vérifie
si ce nombre est positif ou négatif. En fonction de la valeur, affichez un message
approprié. Utilisez une structure "Si" pour gérer cette décision.
Algorithme GestionNombre
VAR
nombre : Entier
Début
Afficher ("Veuillez entrer un nombre entier :")
Saisir nombre
Si ( nombre > 0 ) Alors
Afficher ("Le nombre est positif.")
Sinon
Afficher ("Le nombre est négatif.")
Fin Si
Fin
2. Suivant cas :
L'instruction "Suivant Cas" (ou "else if" en anglais) est utilisée pour gérer plusieurs
conditions dans une structure de contrôle conditionnelle. Si la première condition n'est
pas satisfaite, le programme vérifie la condition suivante, et ainsi de suite.
Syntaxe :
Ces formes de traitement alternatif sont couramment utilisées pour prendre des décisions
dans des programmes informatiques en fonction de conditions ou de valeurs spécifiques.
Elles permettent d'exécuter différentes séquences d'instructions en fonction de ces
conditions, offrant une flexibilité essentielle dans la programmation.
Algorithme GestionJourSemaine
VAR
jour : Chaîne de caractères
Début
Afficher ("Veuillez entrer un jour de la semaine :")
Saisir jour
Suivant jour FAIRE
Cas 1 : "lundi"
Afficher ("C'est le début de la semaine.")
Cas 2 : "vendredi"
Afficher ("C'est bientôt le week-end.")
SINON
Afficher ("C'est un jour de la semaine ordinaire.")
Fin Suivant
Fin
Écrire un algorithme qui permet à l'utilisateur de saisir la note d'un étudiant (un nombre
entier entre 0 et 20) et attribue une mention en fonction de cette note. Voici les mentions
possibles :
Algorithme ClassementEtudiant
VAR
note : Entier
mention : Chaîne de caractères
Début
Afficher ("Veuillez entrer la note de l'étudiant (entre 0 et 20) :")
Saisir note
Suivant note FAIRE
Cas 0 à 9 :
mention <- "Insuffisant"
Cas 10 à 12 :
mention <- "Passable"
Cas 13 à 15 :
mention <- "Assez bien"
Cas 16 à 18 :
mention <- "Bien"
Cas 19 à 20 :
mention <- "Très bien"
SINON
mention <- "Note invalide"
Fin Suivant
Afficher ("Mention : " + mention)
Fin