0% ont trouvé ce document utile (0 vote)
32 vues51 pages

Introduction à l'Algorithmique et Programmation

Le document traite de la conception et de la définition des algorithmes, en expliquant leur rôle essentiel dans le développement informatique en tant que séquence d'opérations pour résoudre des problèmes. Il aborde également les structures d'algorithmes, la déclaration de variables, les types de données, ainsi que les structures conditionnelles et répétitives. Des exemples d'algorithmes illustrent les concepts, notamment pour le calcul de résultats et la vérification de conditions.
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 PPTX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
32 vues51 pages

Introduction à l'Algorithmique et Programmation

Le document traite de la conception et de la définition des algorithmes, en expliquant leur rôle essentiel dans le développement informatique en tant que séquence d'opérations pour résoudre des problèmes. Il aborde également les structures d'algorithmes, la déclaration de variables, les types de données, ainsi que les structures conditionnelles et répétitives. Des exemples d'algorithmes illustrent les concepts, notamment pour le calcul de résultats et la vérification de conditions.
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 PPTX, PDF, TXT ou lisez en ligne sur Scribd

Introduction

La conception d’un algorithme est


une étape indispensable dans tout
développement informatique : ce
sont les solutions qu’il présente qui
sont programmées . La réécriture
dans un langage informatique est
l’étape finale du développement
Définition d’un algorithme.
Le mot « algorithme »provient de la forme latine (Algorismus) du nom de mathématicien
arabe Al KHAWARIZMI . Ce dernier formula une première définition: « Un algorithme est
une séquence d’opérations visant à la résolution d’un problème en un temps fini »
Nous pouvons adopter la définition suivante : un algorithme est la description de la
méthode de résolution d’un problème quelconque en utilisant des instructions
élémentaires. Ces instructions deviennent compréhensibles par l’ordinateur lors de la
traduction de l’algorithme en un programme.
Algorithmique et programmation.
Tout problème à programmer doit être résolu, d’abord sous forme
d’algorithme , puis converti en programme dans le langage de
votre choix . En effet un algorithme est indépendant du langage
de programmation utilisé.
Un programme est un enchainement d’instructions , écrit dans
un langage de programmation , exécutées par un ordinateur,
permettant de traiter un problème et de renvoyer des résultats .
Il représente la traduction d’un algorithme à l’aide d’un langage
de programmation .Le cycle de développement d’un
programme(ou application) informatique peut se résumer
ainsi(figure)
Algorithm Programm
Problème résultats
e e
Structure générale d’un algorithme. En tête Algorithme Nom Algorithme
Un algorithme est composé de trois parties
● l’en-tête : cette partie sert à donner un nom Partie Constante
Identificateur=valeur
à l’algorithme . Elle est précédée par le mot
Déclarative Variable
Algorithme;
Identificateur :type
● la partie déclarative : dans cette partie , on
déclare les différents objets que l’algorithme
Corps de Début
utilise (constantes, variables, etc);
Instruction 1
● le corps de l’algorithme : cette partie
L’algorithme Instruction 2
contient les instructions de l’algorithme .Elle
Instruction n
est délimitée par les mots Début et fin.
Fin
Les variables et les constantes :
[Link] de variable
Les données ainsi que les résultats
des calculs intermédiaires ou finaux,
sont rangés dans des cases
mémoires qui correspondent à des
variables .
Ainsi , une variable (figure suivante)
est rangée dans un emplacement
mémoire nommé, de taille fixe (ou
non) prenant au cour du
déroulement de l’algorithme , un
nombre indéfini de valeur
différentes.
Déclaration des variables :
La partie déclaration consiste à énumérer toutes les variables dont on aura
besoin au cours de l’algorithme .
Chaque déclaration doit comporter le nom de la variable (identificateur )
Syntaxe: Variable identificateur : type
Exemples :
Variable surface : réel
Variable a : entier
Variable a,b,c : entiers
Variable nom_Prénom : chaine
Variable absent : logique
Identificateur :
Un identificateur est le nom donné à une variable , une fonction, [Link] nom
doit obligatoirement commencer par une lettre suivie d’une suite de lettre et
de chiffres et il ne doit pas contenir d’espace.
Type de données :
Le type d’une variable est l’ensemble des valeurs qu’elle peut prendre . Par
exemple , une variable de type logique (booléen)peut prendre les valeur Vrai
ou Faux
Les différents types utilisés en algorithmique:
Type Entier ,sert à manipuler les nombres entiers positifs ou né[Link]
exemple : 5,-15 ,etc.
Type réel quant à lui sert à manipuler les nombres à virgule. Par exemple
: 3.14, -15.5 ,etc .
Type Caractère , permet de manipuler des caractères alphabétiques et
numériques . Par exemple :’a’,’b’,’?’, ‘1’.
Type de chaine sert à manipuler des chaine de caractères permettant
de représenter des mots ou des phrases. Par exemple : ˝bonjour˝.
Type logique (Booléen), utilise les expressions logiques. Il n’ya que deux
valeurs Booléenes :Vrai et Faux .
Exemple
Variables n: entier
r:réel
a,b: logique
nom_etudiant : chaine
Algorithme Note
Variables note1,note2,résultat : réel
Début
Ecrire (Entrez la note1)
lire (note1)
Ecrire(Entrez la note2)
lire(note2)
résultat (note1+note2)/2
Ecrire( le résultat est , résultat)
Fin
Algorithme Somme
Variables nombre1, nombre2,résultat : entiers
Début
Ecrire (Entrez nombre1)
lire (nombre1)
Ecrire(Entrez nombre2)
lire(nombre2)
résultat nombre1+nombre2
Ecrire( le résultat est , résultat)
Fin
Affectation

En algorithmique (informatique), une affectation est une opération qui permet


d'attribuer une valeur à une variable.
Dans la plupart des langages de programmation, l'affectation se note = ou bien :=.

Exemple :

Algorithme Calcul
Variable A,B,C,D : entier
Début
A 10
B 30
C A+B
D C*A
Fin
Exercice : Ecrire un algorithme qui permet de
saisir le prix HT(PHT)d’un article et de calculer
son prix total Toutes Taxes
Comprises ,TTC(PTTC).TVA=20%.
PTTC PHT +(PHT * TVA)/100
1- Algorithme Calcul_PTTC
2- Variables PHT,PTTC :réel
3- Constante TVA=20 :réel
4- Début
5- Ecrire ("Entrez le prix hors taxes" )
6- Lire(PHT)
7- PTTC PHT +(PHT * TVA)/100
8- Ecrire ( "Le prix TTC est " ,PTTC )
9- Fin
Explication de l’algorithme
N° Explication
de
ligne
1 Déclare un algorithme dont le nom est Calcul_PTTC
2 Déclaration les différentes variables utilisées par l’algorithme
3 Déclare la constante TVA
4 Marque le début des traitements effectués par l’algorithme
5 Affiche à l’écran le message :Entrez le prix hors taxes :
6 Permet à l’utilisateur de saisir une valeur au clavier qui sera
affectée à la variable PHT
7 Calcul le prix TTC et affecte le résultat à la variable PTTC
8 Affiche le résultat à l’écran
9 Marque la fin de l’algorithme
Rédiger un algorithme pour calculer l'aire d'un rectangle L × l, «
longueur fois largeur »

Rédiger un algorithme pour calculer l'aire d'un triangle


(base*hauteur)/2
Chapitre 02 : Les structure alternatives
et répétitives
Les structures alternatives

Introduction : contrairement au traitement séquentiel , la


structure alternative ou conditionnelle permet d’exécuter ou
non une série d’instruction selon la valeur d’une condition.

La structure SI…. Alors…..FinSI

Syntaxe :

Si condition Alors
Instruction(s)1
Sinon
Instruction(s)2
FinSI
Une condition est une expression logique ou une variable
logique évaluée à Vrai ou Faux.
La condition est évaluée. Si elle est vraie, la série
d’instruction1 exécutée et l’ensemble d’instruction 2 est
Sautera directement à la première instruction située avant le FinSi.
De même , au cas où la condition était fausse (avait comme valeur faux) la
machine saute directement à la première ligne située après le Sinon et
exécute l’ensemble d’instruction 2.

Exercice
Ecrire un algorithme qui affiche si un nombre est inferieur ou supérieur de
dix
Algorithme vérification
Variable nombre : entier
Début
Ecrire ("Entrez un nombre " )
Lire(nombre )
Si nombre >10 Alors
Ecrire (nombre,« Est supérieur de dix" )
Sinon
Ecrire (nombre,« Est inferieur de dix" )
FinSI
Fin
Exercice :Ecrire un algorithme qui affiche la catégorie d'âge de
l’utilisateur
si l'âge est supérieur de 18 ans alors affiche adulte sinon affiche
mineur
Algorithme catégorie
Variable age : entier
Début
Ecrire ("Entrez votre âge " )
Lire(age )
Si age >18 Alors
Ecrire (age, " vous êtes adulte" )
Sinon
Ecrire (age, " vous êtes mineur " )
FinSI
Fin
Exercice 1

• Quelles seront les valeurs des variables A et B après exécution


des instructions suivantes ?
Var A, B : Entier
début
A←1
B←A+3
A←3
Exercice
• Ecrire un algorithme qui demande un nombre à l’utilisateur,
et l’informe ensuite si ce nombre est positif ou négatif (on
laisse de côté le cas où le nombre vaut zéro)
algorithme test positif ou négatif;
Var n : Entier;
début
Ecrire ("Entrez un nombre : " );
Lire (n);
Si n > 0 Alors
Ecrire ("Ce nombre est positif”);
Sinon
Ecrire ("Ce nombre est négatif ");
Finsi
fin
Ecrire un algorithme qui teste si une note saisie au clavier est comprise
entre 0 et 20.
Algorithme TestNote
Variables Note :réel
Message : chaine
Début
Ecrire ("Entrer la note ")
Lire (Note)
Si Note >=0 Et Note<=20 Alors
Message " La note " & Note & " est correcte «
Sinon
Message " La note " & Note & " est incorrecte «
Fin Sin
Ecrire (Message)
Fin
Il est enfin possible d'ajouter autant d'alternatives conditionnelles que l'on souhaite après une
instruction conditionnelle.
On précise avec le mot-clé SInonSI sous quelle condition chaque alternative doit se réaliser.
Exemple
L'ordinateur qui exécute l'algorithme suivant affecte une valeur différente à estMajeur et affiche un
texte différent à l'écran, selon l'âge entré par l'utilisateur, avec trois situations possibles.

Variable age : nombre


Variable estMajeur : booléen
Début
Écrire "Quel est votre âge ?"
Lire age
Si age ≥ 18
estMajeur ← vrai
Écrire "Vous êtes majeur."
SinonSi age ≥ 16
estMajeur ← faux
Écrire "Vous êtes mineur, mais vous pouvez travailler."
Sinon
estMajeur ← faux
Écrire "Vous êtes mineur."
FinSi
Fin
La Structure Si … Alors … SInonSI… SInon…FinSI.
Syntaxe :
Si condition 1 alors
Instruction 1
SInonSI condition 2 alors
Instruction 2
SInonSI condition 3 alors
Instruction 3
………
Sinon
Instruction
Finsi
L’instruction qui sera exécutée est l’instruction dont la condition est
vraie . Si aucune condition n’a la valeur vraie ,c’est l’instruction qui suit
le Sinon qui sera exécutée .
Exemple : Ecrire un algorithme qui permet d’afficher le maximum parmi
deux nombres saisis au clavier .
Solution
Algorithme Max
Variables A,B : réel
Début
Ecrire (Entrer la valeur de A :)
Lire(A)
Ecrire (Entrer la valeur de B :)
Lire(B)
Si A>B Alors
Ecrire ( Le maximum ,A )
SinonSI A =B alors
Ecrire ( égalité )
Sinon
Ecrire (le maximum, B )
Finsi
FIn
Ecrire un algorithme qui demande un nombre à l’utilisateur,et l’informe
ensuite si ce nombre est positif ou négatif on inclut cette fois le
traitement du cas où le nombre vaut zéro).
algorithme test positif ou négatif;
Var n : Entier;
début
Ecrire ("Entrez un nombre : " );
Lire (n);
Si n < 0 Alors
Ecrire ("Ce nombre est négatif " );
SinonSI n 0 Alors
Ecrire ("Ce nombre est nul " );
Sinon
Ecrire ("Ce nombre est positif " );
Finsi
Finsi
Fin
Structure à choix multiples SELON-QUE
La structure SELONQUE permet d'effectuer tel ou tel traitement en
fonction de la valeur des conditions 1ou 2 ou ..n .

 Syntaxe :
 SELONQUE
 <condition 1> : <action 1>
 <condition 2> : <action 2>
 ...
 <condition n> : <action n>
 SINON : <action_sinon>
 FINSELONQUE
Fonctionnement :
1 : la condition 1 est évaluée :
• Si la condition 1 est vraie, alors on exécute l'action correspondante et on quitte
la structure selon-que
• Si la condition 1 est fausse, on évalue la condition 2...et ainsi de suite.
[Link] aucune n'est vraie on effectue l'action sinon ( au cas où l'action sinon
n'existe pas alors aucune action n'est exécutée !).

Lire(Note)
SELONQUE
Note ≥ 16 : ECRIRE (‘'TB'')
Note ≥ 14 : ECRIRE (‘'B'')
Note ≥ 12 : ECRIRE (‘'AB'')
Note ≥ 10 : ECRIRE (‘'Passable'')
SINON : ECRIRE (‘'ajourné'')
FINSELONQUE
NB :
En programmation, cette structure peut exister mais avec une forme ou un
fonctionnement éventuellement différent. Si elle n'existe pas, il faut se souvenir que, en
fait, SELONQUE est un raccourci d'écriture pour des SI imbriqués.
Structure à choix multiples
Cette structure conditionnelle permet de choisir le traitement à effectuer
en fonction de la valeur ou de l’intervalle de valeur d’une variable ou
d’une expression .
Syntaxe :
Selon sélecteur faire
Valeur1 : action(s)1
Valeur2:action(s)2
Valeur3:action(s)3
…….
Valeurn:action(s)n
Sinon
action(s)
FinSelon

Lorsque l’ordinateur rencontre cette instruction ,il vérifie la valeur de la


variable de sélection (sélecteur )et il la compare aux différentes valeur .
Ecrire un algorithme permettant d’afficher le mois en toute lettre selon
son numéro saisi au clavier
Algorithme Mois
Variable N : Entier
Début
Ecrire("Donner le numéro du mois : ")
Lire(N)
Selon N faire
1:Ecrire ( Janvier )
2:Ecrire (Février )
3:Ecrire ( Mars)
4:Ecrire (Avril)
5:Ecrire (Mai)
6:Ecrire (Juin)
7:Ecrire (Juillet)
8:Ecrire (Aout)
Sinon
Ecrire(Le numéro saisi est incorrecte :)
FinSelon
Fin
Les structures répétitives
Introduction
Prenons le cas d’une saisie au clavier ,par exemple, on pose une
question à laquelle l’utilisateur doit répondre par o(oui )ou
N(non).
L’utilisateur risque de taper autre chose(une autre lettre ), le
programme peut soit planter par une erreur d’exécution soit se
dérouler normalement jusqu’au bout, mais en produisant des
résultats fantaisistes.
Pour remédier à ce problème , on peut mettre en place un
contrôle de saisie pour vérifier que les données entrées au
clavier correspondent bien à celles attendues par l’algorithme.
La boucle TantQue ….Faire
La boucle TantQue permet de répéter un traitement tant que la
condition est vraie
Syntaxe :
TantQue condition faire
Instruction(s)
Algorithme contrôle_de_saisie
Variable rep : caractère
Début
Ecrire(Voulez vous une copie de ce cours? (o/n))
Lire(rep)
TanQue rep ≠ ‘o’ ET rep ≠ ‘n’
Ecrire(Erreur de saisie)
Ecrire(Voulez vous une copie de ce cours? (o/n))
Lire(rep)
FinTantQue
Fin
# Créé par Lenovo, le 13/05/2024 en Python 3.7
rep = str(input("Voulez vous une copien de ce
cours (oui/non)"))
while rep !='oui' and rep !='non':

print("Erreur de saisie")
rep = str(input("Voulez vous une copien de ce
cours (oui/non)"))

else:
print("votre choix est ",rep)
Exercice
Ecrire un algorithme qui demande une note supérieure ou égale à 0 et
inférieure ou égale à 20 , après si la notre est inferieure de 10
l’utilisateur aura un message sur l’écran votre mention est faible ,et si
la notre est entre 10 et 12 l’utilisateur aura un message affiché sur
l’écran , votre mention est passable ,et si la notre entre 14 et 16
l’utilisateur aura un message sur l’écran , votre mention est bien « ,et si
la note est supérieure de 16 l’utilisateur aura un message affiché sur
l’écran , votre mention est très bien ,
Algorithme mention
Variable note : réel
Début
Ecrire(entrer votre note )
Lire(note )
TanQue note <= 0 ET note >=20
Ecrire(la note doit être entre 0 et 20)
Lire(note )
FinTantQue
Si note<10
Ecrire(votre mention est faible )
Sinon
si note>=10 ET note <=13
Ecrire(votre mention est passable)
Sinon
si note note >=14 ET note <=16
Ecrire(votre mention est bien )
Sinon
Ecrire(Votre mention est très bien )
Finsi
Fin

Fin
Si une structure TantQue dans laquelle la condition ne devient jamais
fausse .Le programme tourne dans une boucle infinie et n’en sort plus .
Exemple : Boucle Infinie
Dans l’exemple ci-dessous nous avons une boucle infinie , l’ordinateur
ne s’arrêtera jamais d’afficher ^d’afficher le message bonjour car la
variable I qui est testée dans la condition n’est jamais incrémentée:
I 1
Tant que I<=10
Ecrire (Bonjour)
Fin TantQue
La boucle Pour …Faire
La boucle Pour … Faire permet de répéter une liste d’instructions un
nombre connu de fois
Pour compteur valeur _initiale jusqu’à valeur_finale Faire
Instruction(s)
FinPour
La variable compteur est de type entier ,Elle est initialisée à la valeur
initiale .Le compteur augmente sa valeur de un(1)automatiquement à
chaque tour de boucle jusqu’à la valeur finale.
Pour chaque valeur prise par la variable compteur , la liste des
instructions est exécutée.
Lorsque la variable compteur vaut la valeur finale, le traitement est
exécuté une dernière fois puis le programme sort de la boucle.
Exemple
Pour k 0 jusqu’à 10 faire
Ecrire ( 7* , k = ,7*k)
Ecrire (\)
FinPour
Exercice
Ecrire un algorithme permettant de calculer la somme des dix premiers
nombres entiers.
Algorithme Somme
Variables S,I:Entier
Début
S 0
Pour I 1 jusqu’à 10 Faire
S S+I
FinPour
Ecrire(la somme des dix premiers entiers est : ,S)
Fin
Remarque :
Par défaut la variable compteur est incrémentée de 1 à chaque tour de
boucle
Pour modifier la valeur d’incrémentation, il suffit de rajouter le mot Pas
(en anglais step)et la valeur de ce pas à la boucle Pour.
La syntaxe générale de la structure Pour est :
Pour compteur VI jusqu’à VF Pas ValeurPas Faire
instruction(s)
FinPour
VI c’est la valeur initiale
VF c’est la valeur finale
Exercice :
Ecrire un algorithme qui permet de saisir un nombre entier et qui calcule
la somme des entiers pairs jusqu’à ce nombre .Par exemple ,si l’on saisi
10,le programme doit calculer
0+2+4+6+8+10=30
Algorithme Remise
Variables MA, R,MP : réel
Début
Ecrire (Entrez le montant d’achat :)
Lire(MA)
R MA*3/100
MP MA-R
Ecrire (Le montant de la remise est ,R :)
Ecrire (Le montant à payer est ,MP :)
Fin
Solution:
Algorithme somme
Variables i,n,s entiers
Début
Ecrire (Entrer la valeur de n)
Lire(n)
s 0
Pour i 0 Jusqu’à n Pas 2 faire
s s +i
FinPour
Ecrire (la somme des nombres pairs est : ,s)
Fin
Chapitre 03 : Les Tableaux
I. Introduction

Imaginons que dans un programme , nous avons besoin d’un


grand nombre de variables , il devient difficile de donner un nom à
chaque variable.

Exemple :
Ecrire un algorithme permettant de saisir cinq notes et de les
afficher après avoir multiplié toutes les notes par trois .
Solution :

Algorithme Note
Variables N1 ,N2 N3 ,N4 , N5 : Réel
Début
Ecrire (Entrer la valeur de la 1er note )
Lire(N1)
Ecrire (Entrer la valeur de la 2er note )
Lire(N2)
Ecrire (Entrer la valeur de la 1er note )
Ecrire (La note 1 multipliée par 3, N1*3 )
Ecrire (La note 2 multipliée par 3, N1*3 )
Ecrire (La note 3 multipliée par 3, N1*3 )
Ecrire (La note 4 multipliée par 3, N1*4 )
Ecrire (La note 5 multipliée par 3, N1*5 )
Fin
La même instruction se répète cinq fois . Imaginons que si l’on voudrait
réaliser cet algo avec 100 points ,cela deviendrait fastidieux .
Un tableau est une suite d’éléments de même type ,il utilise plusieurs
cases mémoire à l’aide d’un seul nom . Comme toutes les case portent le
même nom
Elle se différencient par un numéro ou un indice .
Nous pouvons représenter schématiquement un tableau nommé Note
12 14 11,5 13 12
composé de trois cases, dans la mémoire comme suit:
Contenu
Note du
note 1 note2 note3 note4 note5 tableau

Nous disposons alors de cinq variables . Pour les nommer ,on indique le
nom du tableau suivi de son indice entre croches ou entre parenthèses: La
II. Tableau à une dimension
1. Déclaration
La déclaration d’un tableau permet d’associer à un nom une zone mémoire
composée d’un certain nombres de cases de mémoires de même type .
Syntaxe :
Variable identificateur ; tableau [indice _min. Indice_max] de type ou bien
Variable identificateur : tableau[taille] de type
- Le premier élément d’un tableur porte l’indice zéro ou l’indice 1 selon
les langages .
- La valeur d’un indice doit être un nombre entier
- La valeur d’un indice doit être inferieure ou égale au nombre d’éléments
- Du tableau .
2. Exemple
L’instruction suivante déclare un tableau de 30 éléments du tableau
Variable Note : tableau [1..30]

Vous aimerez peut-être aussi