Vous êtes sur la page 1sur 84

Algorithmique et Programmation

Réalisé par :
-Islam EL Melhaoui
-Fatima Zahra Kerarmi

Année scolaire 2019-2020


2

Algorithmique et Programmation

Révision du
leçon 1 leçon 2 leçon 3 leçon 4 Contrôle
module

Science 1

leçon Révision

Science 2
3

PLAN

Notion d’Algorithme

Instruction de base

Structure de contrôle de base

Langages de programmation

Révision du module

Contrôle
Notion d’Algorithme
Un algorithme est une suite d’actions précises (ou
d’instructions) qui doivent être exécutées dans un ordre
déterminé en vue de la résolution d’un problème .

Exemple : Calculatrice
Caractéristiques d’un algorithme

• Il doit être fini : se termine après un nombre fini d’opérations

• Il doit être effectif : toutes les opérations doivent pouvoir être effectuer
exactement , exécutées dans un ordre déterminé et dans un temps fini

• Il doit posséder au moins un résultat


Résolution d’un problème dans notre vie

Analyse Exécution
Problème Plan Résultat
Résolution informatique d’un problème

Phase 1: analyse du problème

Cette phase consiste à analyser le problème pour en dégager les trois


composantes suivantes:

Les données d’entrée(connus): les données à fournir à l’algorithme

Le traitement : les étapes nécessaires pour transformer les données en résultat

Les données de sortie: les résultats

A ce niveau, on dispose d’un processus informatique de résolution , appelé


algorithme.
Résolution informatique d’un problème

Phase 2 : traduction de l’algorithme

Pour la mise en pratique du processus informatique de


résolution, il faut traduire l’algorithme dans un langage
compréhensible par l’ordinateur , appelé langage de
programmation . On obtient alors un programme qui sera
soumis à l’ordinateur, puis exécuté
Résolution informatique d’un problème

Tache réalisée par le programmeur

Analyse Traduction
Problème algorithme programme

Exécution
Résultat

Données

Tache réalisée par l’utilisateur du programme


Exercices

Calculer la somme S des deux nombre donnés x et y.

 Les données d’entrée : les deux nombres x et y

 Traitement :

S=x +y

 Les données de sortie (Résultat) : S

 
Exercices

Calculer la somme S des carrés de deux nombre donnés x


et y.

 Les données d’entrée : les deux nombres x et y

 Traitement :

X²= x * x
Y²= y * y
S = x² + y²
13

PLAN

Notion d’Algorithme

Instruction de base

Structure de contrôle de base

Langages de programmation

Révision du module

Contrôle
problème
Etant données la longueur et la largeur d’une salle, calculez sa surface

Phase d’analyse :
 
 Les données d’entrée : Largeur et Longueur
 Traitement : Surface = Largeur * Longueur
 Les données de sortie (Résultat) : Surface
Algorithme:
Algorithme CalculeSurfaceSalle
Début
demander Longueur
demander Largeur
Calculer (Surface = Longueur * Largeur)
Afficher (Surface)
Fin
Structure d’un algorithme

Un algorithme se compose de trois parties :

  Entête Algorithme NomAlgorithme

Déclaration donnés, résultat

 Début
Corps de Traitement
l’algorithme Fin
Exercices 1

Etant données la longueur d’un rectangle et le pourcentage de sa


largeur par rapport à sa longueur, calculez sa surface

Phase d’analyse :

 Les données d’entrée : Largeur et Longueur

 Traitement :

Largeur = rapport * langueur


Surface = Largeur * Longueur

 Les données de sortie (Résultat) : Surface


Exercices 1

Algorithme:
Algorithme CalculeSurfaceSalle
Début
demander Longueur
demander Rapport
Calculer (Largeur = Longueur * rapport)
Calculer (Surface = Longueur * Largeur)
Afficher (Surface)
Fin
Exercices 2

Calculer la moyenne des notes de chaque élève. Sachant que chacun a quatre
notes

Phase d’analyse :

 Les données d’entrée : note1 , note2 , note3 , note4

 Traitement :

Somme = note1 + note2+ note3+note4


Moyenne = Somme / 4

 Les données de sortie (Résultat) : Moyenne


Exercices 2

Algorithme:
Algorithme Moyenne
Début
demander note1
demander note2
demander note3
demander note4
Calculer (Somme = note1 + note2+ note3+note4)
Calculer (Moyenne = Somme / 4)
Afficher (Surface)
Fin
Exercices 3

Calculer la moyenne des notes de chaque élève. Sachant que chacun a quatre
notes

Phase d’analyse :

 Les données d’entrée : note1 , note2 , note3 , note4

 Traitement :

Somme = note1 + note2+ note3+note4


Moyenne = Somme / 4

 Les données de sortie (Résultat) : Moyenne


Activité

L’établissement Ibn Sina décide d’automatiser les calculs des moyennes


des notes des élèves des classes du Tronc Commun. Ainsi, elle réalise un
modèle de Bulletin de notes suivant et cherche à établir un algorithme
équivalent.
Activité

Tronc Commun texte classe

Kerarmi texte nom

Fatima texte prenom


Zahrae
13,45 Nombre note_info

16 Nombre note_ang

3 Nombre coeff_info

2 Nombre coeff_ang

oui admin
Notion de donnée

Les données sont des informations nécessaires au


déroulement d’un algorithme.

Donnée

Son Sa
nom Valeur

Son
Type
Notion de donnée

1. Caractéristiques de donnée :
 
Une donnée est caractérisée par :

Son nom : appelé aussi identificateur, il sert à représenter la


donnée dans l’algorithme. Ce nom devra être significatif.

Exemple : Long peut représenter « la longueur du rectangle ».

Long
Notion de donnée

Sa valeur : c ‘est la valeur prise par la donnée au cours de


l’exécution de l’algorithme.

Exemple : la valeur que peut prendre la donnée Long est 4

Long
Notion de donnée

 Son type : il caractérise la valeur que peut prendre la donnée. Il


existe trois types :

a. Type numérique :
Ce type englobe :
les entiers (-2, 0, 10,200)
les réels (-5, -1.5, 0.2, 0,297)

Exemple :
Long Age

Long est de type réel


Age est de type entier
Notion de donnée

b. Type texte :

b.1) Type caractère :


La donnée peut accepter des valeurs comme : 'a', 'S', '1', '+'
b.2) Type chaîne de caractères :
La donnée peut accepter des valeurs comme : 'bonjour',
'dimanche' ,’Tcs5’

Exemple :
Nom est de type chaîne de caractère
Notion de donnée

c. Type logique(booléen) :

Une donnée de type logique (ou booléen) prend deux états


logiques : vrai ou faux.

Exemple :
Positif est de type booléen
Marié est de type booléen
Notion de donnée

1.Les variables

a) Définition:
Une variable est une zone mémoire dont le contenu peut changer au
cours de l’exécution de l’algorithme.

b) Caractéristiques:
Une variable est caractérisée par:

• Son NOM : (ou identificateur), il sert à représenter la variable dans


l’algorithme. Ce nom devra être significatif.
Notion de donnée

Les règles à respecter pour l’identificateur :

- Peut être composé de lettres, de chiffres et du caractère de «_», (abcA_BC012)


- Il ne doit pas commencer par un chiffre .
- Les espaces ne sont pas autorisés dans l’identificateur.
- Un identificateur ne doit pas comporter plus de 32 caractères.
- Un identificateur ne peut pas être un mot réservé du langage.
Notion de donnée

Exemple : distinguer entre les noms valides et les noms non valides
Nom1
1nom Identificateurs valides
Nom_de_variable
Nom de variable
nom.1
deuxième_choix
deuxieme_choix
Entier Identificateurs non valides
mot-français
h5@site.fr
http//facebook
A#b
_2136457895421
Notion de donnée

Son TYPE : il caractérise la valeur que peut prendre la variable. Il existe


trois types.

Les types des variables :

Numérique

Texte

Booléen
Notion de donnée

Sa VALEUR : c’est la valeur stockée dans la variable à un


moment donné.

c) Syntaxe :
variables nom_de_variable : type
Plusieurs variables du même type se déclarent:
variables Nom_variable1, Nom_variable2, ... : type
Exemple :
variables age :entier
largeur , long : réel
Notion de donnée

Exemple:
Soient nombre1, nombre2, s de type réel ,vous essayez d’écrire un algorithme
qui permet de calculer la somme de nombre1 et nombre2 pour obtenir s comme
Mémoire
résultat

Algorithme Somme
nombre1
Variables nombre1 , nombre2 , s : réel

Début
Demander nombre1 nombre2
Demander nombre2
s
calculer (s=nombre1 + nombre2)
Afficher (s)
Fin
Activité2

comment peut-on calculer la


surface de ce cercle.
Rayon

Pi

surface

Rayon
Activité 2

Phase d’analyse

 Les données d’entrée (à fournir ) : rayon , pi

 Traitement à effectuer : Surface=rayon*rayon*pi

 Les données de sortie (Résultat) : surface


Notion de donnée

2- Les  constantes:
a) Définition:

Une constante est une zone mémoire dont la valeur ne change pas au cours de
l’exécution de l’algorithme.

b) Caractéristiques:

Une constante est caractérisée par :


Son NOM : (ou identificateur)on doit connaître son nom pour la distinguer d’une
autre.
Sa VALEUR : c’est la valeur stockée dans la constante tout au long de l’exécution
de l’algorithme.
Notion de donnée

Syntaxe :
constantes nom_de_constante = valeur

Exemple :
constantes Pi=3,14
Exercice

Ecrire un algorithme qui permet de calculer la surface d’un cercle.

Phase d’analyse :

 Les données d’entrée (à fournir ) : rayon

 Les données constantes: pi

 Traitement à effectuer : Surface=rayon*rayon*pi

 Les données de sortie (Résultat) : surface


Exercice

Algorithme Surface_cercle

Variables
Rayon: réel
Surface: réel
Constantes
Pi=3,14

Début
demander Rayon
calculer (surface=Rayon *Rayon* Pi)
Afficher (Surface)
Fin
Notion de donnée

variables LONG: réel


Age :entier
Nom : chaîne de caractères
Positif: booléen

4,2 Ali Vrai


18

Nom LONG

Positif
Age
Activité

Phase d’analyse: Algorithme:

Les   données en entrée: Algorithme Surface_salle


Variables
Long et Larg
Long : réel
Larg : réel Long ,Larg ,Surface : réel
Le traitement: Surface : réel

Surface=Long * Larg
Début

Les données en sortie:


calculer (Surface=Long * Larg)
Surface
Fin

D’où on va avoir les valeurs de la variable longueur et la variable largueur?


Communication orale
L’utilisateur tape L’ordinateur lit la
Parler au clavier la valeur valeur de la
Ecouter
de la longueur Lire (variable)
longueur

Lire (Long)

Ecrire Lire
Communication écrite

Ecrire Communication écrite Lire


Activité

Phase d’analyse: Algorithme:

Les données en entrée: Algorithme Surface_Salle


  Variables
Long : réel
Larg : réel
surface : réel
Début
Le traitement: Lire(Long)(long)
Demander
Lire(Larg)(larg)
Demander

calculer (surface= Long et Larg)

Les données en sortie:

Fin
Instruction de base

 1. Lecture
1. Définition:
 
La lecture est une opération qui permet de lire des données
tapées au clavier.

2. Syntaxe: Exemple :

Lire (variable1) Lire (note)


Lire (nom)
Lire (variable1, variable2) Lire (X , Y)
L’ordinateur a terminé le
L’utilisateur lit
traitement et veut
l’information écrite
afficher le résultat , donc Ecrire (variable)
sur l’écran
il va l’écrire sur l’écran
Ecrire (surface)

Ecrire Communication écrite Lire


Activité

Phase d’analyse: Algorithme:

Les   données en entrée: Algorithme SurfaceSalle


Variables
Long et Larg Long : réel
Larg : réel
surface : réel
Début
Le traitement:
Lire(Long)
Surface=Long * Larg Lire(Larg)
calculer (surface= Long et Larg)

Les données en sortie: Ecrire


Afficher(Surface)
(Surface)
surface
Fin
Instruction de base

2. L’écriture
1. Définition:
 
L’écriture est une opération qui permet d'afficher le contenu d’une variable
ou/et un message sur l'écran

2. Syntaxe:

Ecrire (variable)
Ecrire (''message'')
Ecrire (''message :'' , variable )
Instruction de base

  Exemple :

Soit noteinfo est une variable.

Ecrire (noteinfo) : signifie afficher sur l’écran le contenu de la


variable noteinfo.

Ecrire (''donnez votre nom : '') : signifie afficher sur l’écran le


message suivant: donnez votre nom :

Ecrire (''votre note d’informatique est : '',noteinfo) : signifie


afficher sur l’écran : votre note d’informatique est : le contenu
de la variable noteinfo.
Instruction de base

Exemple:

    Algorithme Somme

Variables X , Y , S : Réels

Début
Lire(X)
Lire(Y)

calculer
S (S=
X +XY+ Y)

Ecrire ("la somme est : ", S)


Fin
Instruction de base

3. L’affectation
1. Définition:
 
L’affectation est une opération qui consiste à attribuer une
valeur à une variable .

2. Syntaxe:

Elle est représentée par une flèche orientée à gauche


Variable valeur ou bien expression arithmétique
Exemple

Note A B Nom

Note 15 Note 15
  15 ---- ----
----
A Note
15 15 ---- ---- Nom Rim
B A/5
15 15 3 ---- A 15
B Note-2
15 15 13 ----
B 13
Nom Rim
15 15 13 Rim
Instruction de base

Représentation finale d’un algorithme


Algorithme nom_algorithme En tête

 
Variables
Nom_du_variable1, nom_du_variable2  :
Déclaration des
type Nom_du_variable3  : type variables et
Constantes constantes
nom_de_la_constante = valeur

Début
Instructions de lecture
Traitements Corps de
l’algorithme
Instructions d’écriture
Fin
Instruction de base

4. Opérations arithmétiques
Opération Représentation Représentation Exemple
  arithmétique algorithmique
Addition + + A+B

Soustraction - - A-B

Multiplication × * A*B

Division ÷ / A/B

Puissance A² ^ A^10

Reste de la division 17 ÷3 =5 mod A mod B


Reste = 2
Instruction de base

5. Opérations logiques

 Opération logique : Est une comparaison entre deux expression arithmétique

Opération Représentation Exemple


algorithmique
Inférieur ou égal <= A<=B

Inférieur < A<B

Supérieur ou égal >= A>=B

Supérieur > A>B

Déférente <> A<>B

Egal = A=B
Exercice 1

Qu’est ce qu’il va afficher sur l’écran l’algorithme suivant?

Algorithme Exemple
  
Variables S: Entier

Début
Ecrire ("Taper un nombre ") Taper un nombre
Lire(S)
Ecrire (S) 8
Ecrire ("S") S

Ecrire ( " La valeur de S est : " , S ) La valeur de S est : 8

Ecrire (" La valeur de S est : , S ") La valeur de S est : , S

Fin
Exercice 2
Mémoire

Variables Après l’exécution A 5


Instructions de chaque instruction
  3
A B C D B
6
B 3 C 20
3
C 20 20 D 5
A B+2 3
5
D A 5
C B* 2 6
D B+A 8
A A*2 10
C A+B+2 15
Structure de contrôle de base
Activité

  
Ecrire un algorithme qui demande à l’utilisateur
de taper deux nombres A et B puis calculer la
division entre eux Div=A/B .
Activité

Phase d’analyse: Algorithme:

Les   données en entrée: Algorithme Division

A et B Variables A , B , Div : réel

Début
Le traitement:
Ecrire(’’Donner A : ’’)
Div=A * B Lire(A)
Ecrire(’’Donner B : ’’)
Lire(B)
Les données en sortie: Div A/B
Ecrire(’’La valeur de Div est : ’’ , Div)
Div
Fin
Activité

  
10 / 5 = 2

Exécution
Activité

  
1 / 2 = 0,5

Exécution
Activité

  
8 / 8 = 1

Exécution
Activité

  
7 / 0 = Erreur

Exécution
Structures alternatives completes

1. Définition:
  
La structure conditionnelle alternative est une situation dans laquelle on ne
peut
. choisir qu’entre deux solutions possibles

2. Syntaxe:
Si condition alors

Instructions

Sinon

Instructions
Fin si
Structure alternative
Si CONDITION Alors

Instruction 1
  

Sinon

Instruction 2

Fin si

CONDITION INSTRUCTION 1 INSTRUCTION 2

Vrais

Faux
Activité

  
Supposons une liste des notes d’une classe, Ecrire un algorithme qui permet

d’afficher le message suivant ‘Admis’ si la note est supérieur ou égal à 10.


Activité
Algorithme Admis

Variables note : reel


  
Debut

Ecrire (’’donner votre note : ’’)


Lire(note)
Si note >= 10 alors
Ecrire(‘’ Admis ‘’)
Fin si

Fin
Structure alternative simple
Si CONDITION Alors

Instruction 1
  

Instruction 2

Instruction n

Fin si

CONDITION INSTRUCTION 1 INSTRUCTION 2 INSTRUCTION N

Vrais
Faux
Exercice 1

  
ECRIRE L’ALGORITHME QUI PERMET DE
RÉSOUDRE L’ÉQUATION : AX+B=0
Solution

Algorithme equation

Variables a,b : entier


  
x : réel
Début
Ecrire ('' donner la valeur de a : '')
Lire (a)
Ecrire ('' donner la valeur de b : '')
Lire (b)
Si (a=0) alors
Ecrire ('' ensemble vide '')
Sinon
x  -b/a
Ecrire('' solution= '' , x)
Fin si

Fin
Exercice 2

ECRIRE UN ALGORITHME QUI PERMET DE


  
TESTER SI UN NOMBRE EST POSITIF OU NON
Solution

Algorithme positif-negatif
  
Variables
a : entier
Début
Ecrire ('' Entrer un nombre : '')
Lire (a)

Si (a>=0) alors
Ecrire ('' le nombre est positif '')
Sinon
Ecrire ('‘le nombre est négatif '')
Fin si
Fin
Activité

Un chauffeur
 
de taxi est en route pour déposer son
 
client, il arrive devant le Feu de circulation. Notre but
est de décrire l’action qu’il doit exécuter selon la
couleur du feu.
Ecrire un algorithme qui affiche je m’arrête si le feu de
circulation est rouge, je ralentis si le feu de circulation
est orange ou je passe si le feu de circulation est vert.
Activité

Algorithme feu_circulation Algorithme feu_circulation


Variables couleur: chaine de caractere
Début
   Variables couleur: chaine de caractere
Ecrire(‘ Donnez la couleur du feu : ‘)
Lire( couleur ) Début
Si couleur = ‘Rouge’ alors Ecrire(‘ Donnez la couleur du feu : ‘)
Ecrire(‘ Je m’arrête ‘) Lire( couleur )
Fin Si Si couleur = ‘Rouge’ alors
Si couleur = ‘vert’ alors Ecrire(‘ Je m’arrête ‘)
Ecrire(‘ Je passe ‘) Sinon
Fin Si Ecrire(‘ Je passe ‘)
Si couleur = ‘Orange’ alors Fin Si
Ecrire(‘ Je ralentis ‘) Fin
Fin Si
Fin
Structure alternative imbriquée

Syntaxe
  
SI ( CONDITION 1 ) ALORS
INSTRUCTION 1
SINON
SI ( CONDITION 2 ) ALORS
INSTRUCTION 2
SINON
INSTRUCTION 3
FINSI
FINSI
Structure alternative imbriquée
SI ( CONDITION 1 ) ALORS
INSTRUCTION 1
SINON
 
SI  ( CONDITION 2 ) ALORS
INSTRUCTION 2
SINON
INSTRUCTION 3
FINSI
FINSI

Condition Instruction 1 Instruction 2 Instruction 3

Condition 1
Condition 2
Autre
conditions
Activité

Ecrire un algorithme qui permet à l’utilisateur de saisir un entier , et qui affiche


ensuite le jour de la semaine qui dépend à ce nombre.
  

Le Nombre Le Jour
1 Lundi
2 Mardi
…. ….
7 Dimanche
Activité

Algorithme jour

Variable
    A:entier
Début
Ecrire(‘ Donnez la valeur de A: ‘)
Lire( A )
Si A = 1 alors Ecrire(‘ lundi‘) Fin Si
Si A = 1 alors Ecrire(‘ lundi‘) Fin Si
Si A = 1 alors Ecrire(‘ lundi‘) Fin Si
Si A = 1 alors Ecrire(‘ lundi‘) Fin Si
Si A = 1 alors Ecrire(‘ lundi‘) Fin Si
Si A = 1 alors Ecrire(‘ lundi‘) Fin Si

Fin
Structures à choix multiple

1. Définition:

  
la structure conditionnelle à choix multiple permet de choisir le traitement
à effectuer en fonction de la valeur ou de l'intervalle de valeurs d'une
variable ou d'une expression
Structures à choix multiple

2. syntaxe:
Selon sélecteur faire 
  
valeur 1 : instruction 1 
valeur 2 : instruction 2 
valeur 3, valeur4 : instruction 3 
valeur 5..valeur9 : instruction 4
……
valeur N : instruction N

Sinon 

Instruction R

Fin selon 
Exercice 1

  
ECRIRE UN ALGORITHME QUI DONNE LA MENTION
SELON LA MOYENNE GÉNÉRALE OBTENUE PAR UN
ÉLÈVE :

- SI MOYENNE < 10 : INSUFFISANT


- SI 10 <= MOYENNE < 12 : PASSABLE
- SI 12 <= MOYENNE < 14 : ASSEZ BIEN
- SI 14 <= MOYENNE < 16 : BIEN
- SI MOYENNE >= 16 : TRÈS BIEN
Solution

Algorithme mention
Variables
moy   : réel
Début
Ecrire ("Saisissez la moyenne: ")
Lire(moy)
Selon moy faire
moy<10 et moy>=0 : Ecrire("Non admis")
moy<12 : Ecrire("passable")
moy<14 : Ecrire("assez bien")
moy<16 : Ecrire("Bien")
moy<18 : Ecrire("très bien")
moy<=20:Ecrire("Excellent")
Sinon
Ecrire("Note invalide")
Fin selon
Fin

Vous aimerez peut-être aussi