You are on page 1of 98

TECHNIQUES DE

PROGRAMMATION
STRUCTUREE
ISTA NTIC HAY RYAD
Ing . Wassima Akhrif
Anne : 2013-2014
Wakhrif11@gmail.com
lundi 23 septembre 2013
Apprendre la logique de programmation procdurale et de
faon gnrale la logique de tout systme informatique.
Lapprenant doit tre capable de :
Bien poser un problme informatique.
Lanalyser.
Ecrire un algorithme de rsolution du problme.
Traduire ces algorithmes en langage C,Java...
Objectif:
Wassima AKHRIF
lundi 23 septembre 2013
TECHNIQUES DE PROGRAMMATION STRUCTUREE

Introduction

Programmation des Ordinateurs

Langage de Programmation

LArt de Programmer

Cycle de vie dun programme


Wakhrif11@gmail.com
Wassima AKHRIF
lundi 23 septembre 2013
Introduction
Un ordinateur est une machine lectronique programmable
servant au traitement de linformation. Il peut tre assimil un systme
produisant des rsultats partir:
-
dinformations fournies
-
de mthode de rsolution permettant de traiter
ces informations
Donnes
Aide construire les Algorithmes
Un algorithme reprsente lenchanement des actions raliser
ncessaires la rsolution dun problme.
Pour quun ordinateur puisse effectuer des tches aussi varies, il suft de le
programmer.
Wassima AKHRIF
lundi 23 septembre 2013
Introduction
Pour obtenir des rsultats, la description des donnes et les algorithmes
doivent tre cods sous forme de programmes interprtables par
lordinateur.
Wassima AKHRIF
lundi 23 septembre 2013
Introduction
La Programmation des ordinateurs:
Un programme est constitu dun ensemble de directives, nommes
instructions, permettant un systme informatique dxcuter une tche
donne.
Wassima AKHRIF
lundi 23 septembre 2013
Un programme contient:

une description des donnes manipuler;

Une suite dactions mener sur ces donnes.


La Programmation des ordinateurs:
Wassima AKHRIF
lundi 23 septembre 2013
Quest - ce que la programmation?
Introduction
!
Ecriture de texte en respectant des rgles de constructions et de
smantique.
Langage de programmation: est un langage destin dcrire
lensemble des actions conscutives quun ordinateur doit xcuter.
Les phases dun langage sont des instructions.
Le langage de programmation ( dit aussi langage informatique) est rigoureux:
CHAQUE instruction correspond UNE action du processeur.
Wassima AKHRIF
lundi 23 septembre 2013
Introduction
Un Ordinateur ne connait que le systme dnumration binaire.
Un langage utilisant le systme binaire sappelle langage machine.
Pour crire des programmes sous formes accessibles, on a dvelopp dans les
annes 50, les langages dassemblage.
Lassembler est le premier langage informatique qui ait t utilis. Celui -ci est
encore trs proche du langage machine mais il permet dj dtre plus
comprhensible. Toutefois un tel langage est tellement proche du langage machine
quil dpend troitement du type de processeur utilis ( chaque type de processeur
peut avoir son propre langage machine.
Wassima AKHRIF
lundi 23 septembre 2013
On distingue plusieurs types de langage:
Langage de
programmation
procdurale: la
programmation procdurale
implique lcriture de
lexcution des instructions les
unes la suite des autres
ordre squentiel.

Fortran ( 1957): applications


scientiques.

Cobol (1960):

Basic (1964)

Pascal (1969)

C
Langage de
programmation
vnementielle: (permet le
dveloppement dapplications
interfaces graphiques. C++:
voluttion du C; trs utilis
dans lindustrie.

Visual Basic

Visual C++

Visual J++

C# ( C
sharp)

DLPHI

C++ builder

J++ builder
Langage orients
objets: (elle est base sur
lcriture et la rutilisation
de composants objets de
classes objets.

ADA: application
scientiques et de
gestion, applications en
temps rel.

C++: volution du C; trs


utilis dans lindustrie.
Wassima AKHRIF
lundi 23 septembre 2013
Lart de la programmation :
!
la lisibilit: int f(int x){ x = x+1; return x;}
!
Lexactitude: aptitude dun programme fournir le rsultat voulu et
rpondre ainsi aux spcications.
!
La robustesse: aptitude bien ragir lorsque lon scarte des conditions
normales dutilisations
!
Lextensibilit: facilit avec laquelle un programme pourra tre adapt pour
rpondre lvolution des spcications;
!
La rutilisabilit: possibilit dutiliser certaines parties du logiciel pour
rsoudre un autre problme;
!
La portabilit: facilit avec laquelle on peut exploiter un mme logiciel dans
diffrentes implmentations.
!
Lefcience: temps dexcution, taille mmoire.

Savoir programmer = aligner une suite dinstructions;

Il faut respecter des rgles de programmations:


Wassima AKHRIF
lundi 23 septembre 2013
Le cycle de vie dun programme :
La programmation nest quune partie dun projet informatique:
Wassima AKHRIF
lundi 23 septembre 2013

Notions dAlgorithme

Notations gnrales

Notion de variable

Dclarations des variables

Type de variables

Instruction Daffectation
Formalisme algorithmique
Wassima AKHRIF
lundi 23 septembre 2013
Notion dalgorithme

Selon le Petit Robert: ensemble des rgles opratoires propres un calcul.

Un peu plus prcisment:Une squence de pas de calcul qui prend un ensemble


de valeurs comme entre (input) et produit un ensemble de valeurs comme
sortie (output).

Un algorithme rsout toujours un problme de calcul. Lnonc du problme


spcie la relation input/output.

Une bonne connaissance de lalgorithmique permet dcrire des programmes


exactes et efcients.
Wassima AKHRIF
lundi 23 septembre 2013
Notations gnrales

Un algorithme a :
"
un nom;
"
un dbut;
"
une n;
Exemple :
Algorithme: Moyenne
Dbut:
Fin
Suite dinstructions calculant une
moyenne
Wassima AKHRIF
lundi 23 septembre 2013
Notation de variable
Dans un programme informatique, on va avoir en permanence besoin de
stocker provisoirement en mmoire des valeurs.
Il peut sagir de donnes issues du disque dur ou fournies par lutilisateur
( frappes au clavier).

Une variable permet didentier une donne sur laquelle agit un


programme

Une variable occupe une place mmoire


!
choisir avec soin les noms des variables.
exemple : montantTTC = montantHT*(1+TVA)
!
Pour tre utilise par un ordinateur, elle doit tre type.
"
entier
"
rl
"
caractre (a,b...);
"
chanes de caractres (bonjour)
Wassima AKHRIF
lundi 23 septembre 2013
Notation de variable

Le nom ( dit aussi identicateur) dune variable, est form dune ou plusieurs
lettres.

les chiffres sont aussi autoriss condition de ne pas apparatre au dbut


du nom.

La plupart des signes de ponctuations sont exclus en particulier les espaces.


Wassima AKHRIF
lundi 23 septembre 2013
Dclaration des Variables
Rgle: Toute variable utilise doit avoir fait lobjet dune dclaration
pralable.
Algorithme: moyenne
Dbut:
variables n, somme, moyenne: rel
......
moyenne <- somme /n
Fin
Conseil: Les mots cls peuvent tre souligns => il seront traduits par des
mots cls dun langage de programmation:
void main ()
{
oat n, somme , moyenne;
/*..../*
moyenne = somme /n;}
La syntaxe dune dclaration de variable est la suivante:
VARIABLE nom : TYPE
Wassima AKHRIF
lundi 23 septembre 2013
Types de variables
Numrique: Toute variable destine recevoir des nombres.

ENTIER: le type entier dsigne lensemble des nombres entiers


ngatifs ou positifs dont les valeurs varient entre - 32 768 32 767.

REEL: le type rel comprend les variables numriques qui ont des
valeurs relles. La plage des valeurs du type rel est:
-3,40x10^38 -1,40x10^45 pour les valeurs ngatives
1,40x10^-45 3,40x10^38 pour les valeurs positives
VARI ABL E i , j , k :
ENTIER
VARIABLE x,y: REEL
Remarque :Le type de variable choisi pour un nombre va dterminer les valeurs
maximales et minimales des nombres pouvant tre stocks dans la variable
Wassima AKHRIF
lundi 23 septembre 2013
Types des Variables
VARI ABLE nom, pr nom,
adresse : CHAINE
Type Chane: Toute variable destine stocker des caractres : quil
sagisse de lettres, de signes de ponctuation, despaces ou mme de chiffres.
Le nombre maximal de caractres pouvant tre stocks dans une seule
variable dpend du langage utilis.
Wassima AKHRIF
lundi 23 septembre 2013
Types des Variables
Une chane de caractre est note toujours soit entre guillemets, soit entre
des apostrophes.
Cette notation permet dviter les confusions suivantes:

Confondre un chiffre et une suite de chiffres. ( par exemple: 413 peut


reprsenter le nombre 413, ou bien la suite des caractre 4,1,3.

La confusion qui consiste ne pas pouvoir faire la distinction entre le nom


dune variable et son contenu.
Remarque: Pour les valeurs de type chane, il faut respecter la casse.
Par exemple, la chane Salut est diffrente de la chane salut
Wassima AKHRIF
lundi 23 septembre 2013
Types des Variables
Type Boolen: Dans ce type de variable on y stocke uniquement des valeurs logiques : VRAI
ou FAUX ; TRUE ou FALSE ; 0 ou 1 .
VARIABLE etat: BOOLEEN
Wassima AKHRIF
le type boolen est trs conomique en termes de place mmoire occupe
puisque pour stocker une telle information binaire, un seul bit suft
lundi 23 septembre 2013
Oprations et Expressions
Oprations :
Un oprateur est un signe qui relie deux variables pour produire un rsultat.
!
Pour le type numrique , on a les oprateurs suivants:
!
Pour le type chane , on a un seul oprateur qui permet de concatner
deux chanes de caractres.
Loprateur de concatnation est not &.
exemple: la chane de caractres Salut concatner la chane tout le monde donne
comme rsultat Salut tout le monde

+ : addition

- : Soustraction

* : Multiplication

/ : Division

^: Puissance
Wassima AKHRIF
lundi 23 septembre 2013
Expressions:
Oprations et Expressions
Une expression est un ensemble de variables ( ou valeurs) relies par des
oprateurs et dont la valeur de cette combinaison est unique.
Exemple :
7 5+4 x+6-y nom & prnom
o x,y sont des variables numriques ( rels ou entiers), et nom et prnom
sont des variables chane.
Dans une expression : on y trouve des variables ou des valeurs numriques.
Nota: lordre de priorit des oprateurs est important ( * et / sont prioritaire
par rapport + et -, moins dutiliser les parenthses.
Wassima AKHRIF
lundi 23 septembre 2013
Linstruction daffectation
Linstruction daffectation est une opration qui consiste attribuer une
valeur une variable.
On la notera avec le signe <-.
Cette instruction scrit :
VARIABLE <- valeur
VARIABLE <- Expression
Wassima AKHRIF
Toto ! 24 //Attribue la valeur 24 la variable Toto
lundi 23 septembre 2013
Linstruction daffectation
Dans une instruction daffectation on a toujours :

gauche de la che daffectation : un Nom de variable

droite de la che : une valeur ou une expression

Lexpression droite de la che doit tre du mme type que la variable


situe gauche.
Wassima AKHRIF
Si dans une instruction daffectation,
un de ces points nest pas respecter,
cela engendrera une Erreur
lundi 23 septembre 2013
Dclaration des Constantes
Wassima AKHRIF
Constante nomconstante: TYPE <- Expression
utilit : instruction permettant de rserver de lespace mmoire pour stoker
des donnes dont la valeur est xe pour tout algorithme.
Exemple :
constante Pi : Rel <- 3,14
constante Max : Entier <- 100
lundi 23 septembre 2013
Wassima AKHRIF
Formalisme algorithmique

Instructions de Lecture et Ecriture

Exercices
lundi 23 septembre 2013
Wassima AKHRIF
Les instructions de lecture
et criture
Considrons le programme suivant:
VARIABLE A : ENTIER
Dbut
A ! 12 *12
Fin
Permet de calculer le carr de 12.
Comment faire pour calculer le carr
dun autre nombre ?
:( !!! La machine calcule le rsultats, mais lutilisateur qui fait excuter
ce programme ne saura pas que le rsultats correspond au carr de
12.
lundi 23 septembre 2013
Wassima AKHRIF
Les instructions de lecture
et criture
Il faut introduire des instructions qui permettent le dialogue avec
lutilisateur.
"
Lectures des Donnes:
"
Afchage des Donnes:
LIRE NomVariable
ECRIRE NomVariable
ECRIRE Expression
lundi 23 septembre 2013
Wassima AKHRIF
Les instructions de lecture
et criture
LIRE A: Permet de lire une valeur donne partir du clavier et permet
de charger la valeur dans la case mmoire A.
LIRE B,C,D: Lire la 1re valeur et la charge dans B, puis lit la 2me valeur
et la charge dans C, enn lire la 3me valeur et la charge dans D.
Exemple :
LIRE Tel
LIRE Age
Lorsque le programme rencontre une instructions LIRE,
lexcution du programme sinterrompt, attendant la saisie dune
valeur au clavier.
Ds quon tape sur la touche ENTER, lexcution reprend.
lundi 23 septembre 2013
Wassima AKHRIF
Les instructions de lecture
et criture
ECRIRE A: Permet de copier la valeur contenue dans la case mmoire A et
lafcher sur un support externe (cran).
ECRIRE B,C,D: Permet de copier la valeur contenue dans la case mmoire
B,puis la valeur contenue dans la case mmoire C et enn la valeur contenue
dans la case mmoire D.
Exemple :
ECRIRE Bonjour tout le monde : permet dafcher cette phrase.
lundi 23 septembre 2013
Wassima AKHRIF
Les instructions de lecture
et criture
Bonne Manire : Avant de lire une variable, il est fortement conseill
dcrire des libells lcran, an de prvenir lutilisateur de ce quil
doit frapper.
Idem pour linstruction dcriture.
Variables A, CARRE : Rels
DEBUT
Ecrire Entrez un nombre
Lire A
CARRE ! A ^ 2
Ecrire Le carr de ce nombre est :
Ecrire CARRE
FIN
lundi 23 septembre 2013

Introduction

Composition ordinogramme

Prise de dcision

Rptition

Exemple Complet
Reprsentation Hirarchique :Ordinogramme
lundi 23 septembre 2013
Wassima AKHRIF
Reprsentation Hirarchique :Ordinogramme
Introduction :
LOrdinogramme est un mode de reprsentation graphique du fonctionement
dun systme automatis . Il permet de reprsenter les diffrentes oprations
effectues par le systme.
Exemple : Lascenseur
Automatisme compos
Partie Oprative
Partie commande
lundi 23 septembre 2013
Wassima AKHRIF
Ordinogramme
Le foncti onnement de cet ascenseur peut tre reprsenter
graphiquement ( suite dactions et de tests) pour que tout le monde puisse
comprendre son fonctionnement.
On peut le reprsenter laide dun Ordinogramme.
Dans le domaine de linformatique, lOrdinogramme permet de proposer une
vue des oprations excutes par lOrdinateur, dans un format graphique.
Toute fois, cette prsentation ne dispense pas de lcriture du programme sous
forme dun pseudo code.
lundi 23 septembre 2013
Ordinogramme
Wassima AKHRIF
Composition dun ordinogramme:
lundi 23 septembre 2013
Wassima AKHRIF
Exemple:
Ordinogramme
Wassima AKHRIF
lundi 23 septembre 2013
Wassima AKHRIF
Ordinogramme
La Prise de dcision:
La prise dcision est l'lment cl de l'algorithme.
Elle permet en effet de choisir quelle opration on doit effectuer en
fonction de la valeur d'un paramtre.
En gnral, ce choix s'effectue selon l'valuation d'une expression logique
laquelle on peut rpondre par OUI ou NON ou par VRAI ou FAUX.
lundi 23 septembre 2013
Par exemple on peut vouloir effectuer un certain type d'oprations si un
paramtre est positif et une autre srie d'opration si un paramtre est
ngatif.
Dans ce cas l'algorithme prendra la forme suivante :
Ordinogramme
La Prise de dcision:

On Appelle cette
reprsentation graphique un
organigramme
Prise de dcision
Wassima AKHRIF
lundi 23 septembre 2013
Ordinogramme
Des oprations comme le calcul itratif, la sommation, le dcompte
d'entits, la recherche d'entits impliquent toutes la notion de rptition.
partir du moment o il faut rpter, il faut choisir un point de dpart
pour dmarrer le processus de rptition. Cette tape s'appelle l'initialisation
et comme nous le verrons dans ce qui suit, c'est une tape essentielle.
La Rptition
Wassima AKHRIF
lundi 23 septembre 2013
Ordinogramme

La Rptition
Cette rptition est videmment sans n car rien n'est spci pour
arrter le retour vers le haut dans l'algorithme.
Pour corriger la situation, nous devons introduire la notion de prise de
dcision dans la rptition, savoir doit-on continuer oui ou non.
Le cas le plus simple de rptition peut tre reprsent comme suit :
Wassima AKHRIF
lundi 23 septembre 2013
Ordinogramme
La Rptition

LAlgorithme Prcdent devient :
N: nombre de rptition
i : compteur ditrations
incrmentation du compteur.
Dcision : continuer ou
non?
Wassima AKHRIF
lundi 23 septembre 2013
Ordinogramme

La Rptition
Dans cette Algorithme, la variable FAC est modi chaque rptition.
!
la varible Fac a accumul linuence de chaque rptition.
Fac, ici est un accumulateur qui est utilis pour accumuler le produit de
plusieurs valeurs.
Wassima AKHRIF
lundi 23 septembre 2013
Ordinogramme
La Rptition
Wassima AKHRIF

lundi 23 septembre 2013
Wassima AKHRIF
Ordinogramme
Exemple complet:
Dans cette exemple, lordinogramme a t complt et prsente lacquisition
des donnes en entre au travers de lopration lire et les rsultats en
sortie qui gurent dans les oprations prsenter.
Les oprations lecture /criture sont formalises sous forme dune gure
ovale.
lundi 23 septembre 2013

Ordinogramme
Exemple complet:
Wassima AKHRIF
lundi 23 septembre 2013
Ordinogramme
Rappel:
La reprsentation graphique dcrit lenchanement logique des oprations
aboutissant la solution dun problme.
Dbut / Fin
Opration ou traitement
Choix logique avec
comparaison
Ecriture/ lecture
Wassima AKHRIF
lundi 23 septembre 2013
Exercice
Exercice:
Le surveillant gnral dun tablissement scolaire souhaite quon lui crive un
programme qui calcule, pour chaque lve, la moyenne des notes des cinq
matires. Ces matires sont avec leur coefficient
Wassima AKHRIF
MATIERE COEFFICIENT
Math 5
Physique 5
Franais 4
Anglais 2
Histoire - Gographie 2
lundi 23 septembre 2013

Les conditions simples

Conditions complexes

La structure alternative : simple et


imbriqus.

la structure choix

La structure Rptitive:
Structure de Base des Algorithmes
lundi 23 septembre 2013
Wassima AKHRIF
Les conditions Simples:
La comparaison consiste en une comparaison entre 2 expressions
du mme type.
Cette comparaison seffectue avec les oprateurs de comparaison.
Voici la liste des oprateurs accompagns de leur signication.
Nota: Si on compare entre Majuscules et minuscules???
Structure de Base des Algorithmes
lundi 23 septembre 2013
Wassima AKHRIF
Les conditions Complexes:
Certains Problmes exigent parfois de formuler des conditions qui ne
peuvent pas tre exprimes sous la forme simple vu prcdemment.
A cet effet, la plupart des langages autorisent des conditions formes
de plusieurs conditions simples relies entre elles par ce quon appelle
des oprateurs logiques.
Ces oprateurs sont : ET , OU, NON.
Structure de Base des Algorithmes
Oprateurs logiques
lundi 23 septembre 2013
Wassima AKHRIF
Structure de Base des Algorithmes
Oprateurs logiques et tables de logiques
ET, OU, NON
Exemple :
Condition1 ET condition 2
Condition 1 OU condition 2
Non Condition
lundi 23 septembre 2013
Wassima AKHRIF
Structure de Base des Algorithmes
Oprateurs logiques et tables de logiques
En genral: les oprateurs logiques peuvent porter , non seulement sur
des conditions simples, mais aussi des conditions complexes.
Exemple:
(a < 0 ET b >1) OU (a>0 ET b>3)
lundi 23 septembre 2013
Wassima AKHRIF
Structure de Base des Algorithmes
Structures Alternatives:
Dans un programme , il est souvent ncessaire de distinguer
plusieurs cas conditionnant lexcution.
Par exemple:
je veux un programme qui me permet dafcher quune valeur
donne est :POSITIVE ou NEGATIVE.
Est til possible deffectuer ce type dexcution avec les
instructions bases vu prcdemment ? ( affectation, lecture,
crire)
lundi 23 septembre 2013
Structure de Base des Algorithmes
Wassima AKHRIF
Structure de Base des Algorithmes
Structures Alternatives:
Pour pouvoir effectuer un choix dans un traitement ralis, on
utilise la structure Alternative:
SI condition ALORS
bloc 1 dinstructions
SINON
bloc 2 dinstruction
FIN SI
Syntaxe :
lundi 23 septembre 2013
Wassima AKHRIF
Structures Alternatives:
lundi 23 septembre 2013
Structure de Base des Algorithmes
Wassima AKHRIF
Structures Alternatives:
Condition : la condition est une proposition boolene dterminant les
cas dans lequel on se trouve.
Bloc dinstructions ( actions): reprsentent les instructions excuter
selon le cas. Elles peuvent tre de simples instructions, une suite
dinstructions, une autre structure alternative ou une structure
rptitive.
SI condition ALORS
bloc dinstructions
FIN SI
La partie Sinon de la structure est facultative,
lundi 23 septembre 2013
Structure de Base des Algorithmes
Wassima AKHRIF
Structures Alternatives:
Exemple 1:
SI a > 0 ALORS
ECRIRE ''valeur positive''
SINON
ECRIRE ''valeur ngative''
FIN SI
Exemple 2:
SI montant >5000 ALORS
montant <- montant* 0,99
FIN SI
lundi 23 septembre 2013
Structure de Base des Algorithmes
Wassima AKHRIF
Structures Alternatives imbriqus:
On parle de structures imbriqus lorsquune structure alternative
contient son tour une structure alternative.
lundi 23 septembre 2013
Structure de Base des Algorithmes
Wassima AKHRIF
Structures Alternatives imbriqus:
Ecrire un programme qui donne ltat de leau selon la temprature.
(temprature infrieur ou gal 0 : EAU GLACE
temprature < 100 : EAU LIQUIDE
temprature > =100 : VAPEUR
lundi 23 septembre 2013
Structure de Base des Algorithmes
Wassima AKHRIF
Structures Alternatives imbriqus:
Correction exercice :
Variable Temp : Reels
Dbut
Ecrire Entrez la temprature de leau :
Lire Temp
Si Temp <= 0 Alors
Ecrire Cest de la glace
Sinon
Si Temp < 100 Alors
Ecrire Cest du liquide
Sinon
Ecrire Cest de la vapeur
FinSi
FinSi
Fin
lundi 23 septembre 2013
Autre manire de rsoudre le problme:
Variable Temp : Entier
Dbut
Ecrire Entrez la temprature de leau :
Lire Temp
Si Temp < = 0 Alors
Ecrire Cest de la glace
Finsi
Si Temp > 0 Et Temp < 100 Alors
Ecrire Cest du liquide
Finsi
Si Temp > 100 Alors
Ecrire Cest de la vapeur
Finsi
Fin
Structure de Base des Algorithmes
Structures Alternatives imbriqus:
Wassima AKHRIF
lundi 23 septembre 2013
Structure de Base des Algorithmes
Wassima AKHRIF
Structures Alternatives imbriqus:
Comparaison des 2 mthodes:
La 1re version : plus simple crire et plus lisible.
Economie de temps : au cas o la temprature est inf zro, celui - ci
crit Cest de la glace et passe directement la n, sans tre ralenti
par lexamen des autres possibilits.
lundi 23 septembre 2013
Structure de Base des Algorithmes
Wassima AKHRIF
Structures Alternatives imbriqus: Autre Forme
La structure alternative peut prendre une autre forme qui permet
dimbriqus plusieurs conditions.
SELON Expression
Valeur1: action1
Valeur2: action2
.........
ValeurN: actionN
SINON action
FIN SELON
Elle permet d'analyser les diffrentes valeurs d'une variable et les regrouper
en fonction des actions qu'elles conditionnent.
On lappelle structure choix
lundi 23 septembre 2013
Wassima AKHRIF
Exercice 1:Ecrire un algorithme qui demande deux nombres lutilisateur
et linforme ensuite si leur produit est ngatif ou positif.
Attention : On ne doit pas calculer le produit des deux nombres.
Exercice 2 :
Ecrire un algorithme qui afche le maximum de deux nombres A et B.
Exercice 3:
Ecrire un algorithme qui demande trois noms lutilisateur et linforme ensuite
sils sont rangs ou non dans lordre alphabtique.
Exercice 4:
Ecrire un algorithme qui demande lge dun enfant lutilisateur.
Ensuite, il linforme de sa catgorie:
Poussin de 6 7 ans
Pupille de 8 9 ans
minime de 10 11 ans
cadet aprs 12 ans
lundi 23 septembre 2013
Wassima AKHRIF
Structures Alternatives imbriqus: Choix ( selon)
Exercice : Ecrire un algorithme qui demande le numro du mois
( 1,2,3,...12), et qui mafche le nom du mois associ au nombre .
Dans le cas o le nombre saisi nest pas compris entre 1 et 12, le
programme doit mafcher le message suivant veuillez saisir un numro
compris entre 1 et 12)
lundi 23 septembre 2013
Wassima AKHRIF
Structures Alternatives imbriqus: Choix
VARIABLE numMois : entier
VARIABLE mois : chane
DEBUT
Ecrire "Saisir le numro du mois :"
Lire numMois
SELON numMois
cas 1 : mois <- "Janvier"
cas 2 : mois <- "Fvrier"
/*..... */
cas 12 : mois <- "Dcembre"
FIN SELON
Si numMois >= 1 ET numMois <=12 ALORS
Ecrire "le mois saisi est :" ,mois
Sinon
Ecrire "Veuillez saisir un numro compris entre 1 et 12"
Fin Si
FIN
lundi 23 septembre 2013
Wassima AKHRIF
Structures Alternatives imbriqus: CHOIX ( SELON)
lundi 23 septembre 2013

Logique des algorithmes ( utilisation des


structures Ecriture/lecture et structure
imbriqus)
Travaux Dirigs I
lundi 23 septembre 2013
Structure Rptitive

POUR FIN POUR

TANT QUE

REPETER .... JUSQUA


lundi 23 septembre 2013
Structure de Base des Algorithmes
Wassima AKHRIF
Structures Rptitives:
La structure rptitive (ou itrative) permet la rptition d'une suite
d'actions un nombre ni de fois.
Ce nombre peut tre dtermin soit par le programmeur, soit par
l'utilisateur, soit par un calcul effectu par le programme. Cette structure
est aussi appele boucle.
Boucle Condition
....
Action
....
Fin Boucle
Contrle de la boucle
Corps de la Boucle
Fin de la boucle
lundi 23 septembre 2013
On identie en gnrale trois types de rptitions:

Pour Fin Pour

Tant que ....

Rpter ....jusqu
Structure de Base des Algorithmes
Structures Rptitives:
Wassima AKHRIF
lundi 23 septembre 2013
Cette instruction permet de calculer des instructions un nombre connu
de fois.
Le nombre connu: Compteur ditrations.
Ce compteur sera initialis automatiquement la valeur initiale et sera
incrment de la valeur du pas jusqu la valeur nale.
Structures Rptitives
Wassima AKHRIF
La structure POUR:
POUR <compteur = val_initial> A <val_nal> PAS DE <expression pas>
<instructions rpter>
FIN POUR
lundi 23 septembre 2013
<compteur > : Compteur de la boucle.
<val_initial> : Valeur dinitialisation du compteur.
<val_nal> : Valeur pour laquelle la boucle doit sarrter.
<Expression pas> : lincrmentation, par dfaut lincrmentation du compteur est
1, mais il est possible de prciser un pas diffrent.
<instructions rpter>: ce sont les actions quil faudra rpter, ils peuvent tre
une simple instruction , ou une suite dinstructions, une structure alternative ou
une structure rptitive.
Structures Rptitives
Wassima AKHRIF
La structure POUR:
lundi 23 septembre 2013
Exemple du surveillant gnerale:( calcul de la moyenne de la classe pour
150 lves)
Structures Rptitives
Wassima AKHRIF
La structure POUR:
VARIABLES math, phy, ang, hg, moyenne : Rels
VARIABLE i : ENTIER
Dbut
POUR i = 1 A 150
ECRIRE Entrez la note des maths:
LIRE math
ECRIRE Entrez la note des physiques:
LIRE phy
ECRIRE Entrez la note anglais:
LIRE ang
ECRIRE Entrez note histoire go:
LIRE hg
ECRIRE Entrez note franais:
LIRE fran
moyenne <- ((math+phy)*5 + (ang+hg)*2 + fra*4)/18
ECRIRE la moyenne est :, moyenne
FIN POUR
FIN
lundi 23 septembre 2013
Exercice:( Ecrire un algorithme qui demande la valeur de la note, puis qui
calcule et afche la moyenne de 5 interrogations crites).
Wassima AKHRIF
La structure POUR:
lundi 23 septembre 2013
Exercice:( Ecrire un algorithme qui demande la valeur de la note, puis qui
calcule et afche la moyenne de 5 interrogations crites).
Wassima AKHRIF
La structure POUR:
VARIABLES note, somme,moyenne : Rels
VARIABLE i : ENTIER
Dbut
somme <- 0
POUR i = 1 A 5
ECRIRE Entrez une note:
LIRE note
somme <- somme + note
FIN POUR
moyenne <- somme /i
ECRIRE la moyenne des: &i &interrogations est de : &moyenne
FIN
lundi 23 septembre 2013
NOTA :
Concernant lexercice prcdent :
la notation
Ecrire la moyenne des & i & interrogations est de : & moyenne
Afche le mme rsultat que :
Ecrire la moyenne des 5 interrogations est de : , moyenne
ou bien :
ECRIRE la moyenne des: ,i ,interrogations est de : ,moyenne
lundi 23 septembre 2013
Exercice1: Ecrire un algorithme qui demande un nombre de dpart , et qui calcule sa factorielle .
( exemple factorielle de 9, note 9! vaut 1*2*3*4*5*6*7*8*9
Exercice2: Ecrire un algorithme qui demande un nombre de dpart, et qui afche la table de multiplication de ce
nombre, prsente comme suit( cas o lutilisateur entre le nombre 8)
8x 0 = 0
8x 1 = 8
....
8x 10 = 80
Exercice3:
Ecrire un algorithme qui demande un nombre de dpart, et qui calcule la somme des entiers jusqu ce nombre. Par
exemple, si lon entre 5, le programme doit calculer : 1 + 2 + 3 + 4 + 5 = 15
Exercice4: Ecrire un algorithme qui demande successivement 20 nombres lutilisateur, et qui lui dise ensuite quel est
le plus grand parmi ces nombres:
Entrer le numro 1 :
Entrez le numro 2:
......
Entrer le numro 20:
Le plus grand de ces nombres est :
Modiez ensuite lalgorithme pour que le programme afche de surcrot en quelle position avait t saisie ce nombre:
Sa position est :
Wassima AKHRIF
La structure POUR:
lundi 23 septembre 2013
Cette structure permet de rpter les instructions tant quune condition
est satisfaite . Larrt se produit lorsque la condition nest plus vrie .
Structures Rptitives
Wassima AKHRIF
La structure TANT QUE:
TANT QUE <condition>
<instructions rpter>
FIN TANT QUE
La condition est valu avant chaque passage dans la boucle, chaque fois
quelle est vrie on excute les instructions de la boucle.
lundi 23 septembre 2013
Structures Rptitives
Wassima AKHRIF
La structure TANT QUE:
<condition> : appele aussi condition darrt.
<instructions rpter> : les actions rpter selon le cas.
Nota :Cette structure diffre de la premire par le fait quon va rpter
des instructions pour un nombre inconnu au pralable .
lundi 23 septembre 2013
Wassima AKHRIF
La structure TANT QUE:
VARIABLES math, phy, ang, hg, fran,moyenne : Rels
VARIABLE Rponse: CHAINE
Dbut
Rponse <- o /* initialisation*/
TANT QUE Rponse = o
ECRIRE Entrez la note des maths:
LIRE math
ECRIRE Entrez la note des physiques:
LIRE phy
ECRIRE Entrez la note anglais:
LIRE ang
ECRIRE Entrez note histoire go:
LIRE hg
ECRIRE Entrez note franais:
LIRE fran
moyenne <- ((math+phy)*5 + (ang+hg)*2 + fra*4)/18
ECRIRE la moyenne est :, moyenne
ECRIRE Voulez vous continuer oui (o) ou non (n)?
LIRE Rponse
FIN TANT QUE
FIN
lundi 23 septembre 2013
Exercice1: Ecrire un algorithme qui demande lutilisateur un nombre compris entre 1 et 3 jusqu ce que la rponse
convienne.
Exercice2: Ecrire un algorithme qui demande un nombre compris entre 10 et 20, jusqu ce que la rponse convienne. En
cas de rponse suprieure 20, on fera apparatre un message : Plus petit ! , et inversement, Plus grand ! si le
nombre est infrieur 10
Exercice3: Ecrire un algorithme qui demande un nombre de dpart, et qui ensuite afche les dix nombres suivants. Par
exemple, si l'utilisateur entre le nombre 17, le programme afchera les nombres de 18 27.
Exercice4: Ecrire un algorithme qui demande successivement des nombres lutilisateur, et qui lui dise ensuite quel est le
plus grand parmi ces nombres et quel tait sa position. La saisie des nombres sarrte lorsque lutilisateur entre un zro
Wassima AKHRIF
La structure TANT QUE:
lundi 23 septembre 2013
Cette structure sert rpter des instructions jusqu ce quune
condition soit ralis. sa syntaxe est la suivante :
Structures Rptitives
Wassima AKHRIF
La structure REPETER JUSQUA:
REPETER
<instructions rpter>
JUSQUA
<condition>
lundi 23 septembre 2013
Le fonctionnement est analogue celui de la boucle tant que quelques
dtails prs:
-
La condition est valu aprs chaque passage dans la boucle.
-
On excute le corps de la boucle jusqu ce que la condition soit
vrie.
Wassima AKHRIF
La structure REPETER JUSQUA:
lundi 23 septembre 2013
Exemple :
VARIABLE a,c : Entiers
Dbut
REPETER
LIRE a
c <- c * c
ECRIRE c
JUSQUA a = 0
ECRIRE FIN
FIN
Wassima AKHRIF
La structure REPETER JUSQUA:
Les instructions sont rptes jusqu ce que la variable a
prennent la valeur de 0.
NOTA: le nombre de rptition dans cette structure nest pas indiqu
explicitement. Il dpend des donnes que lon fournit au programme.
lundi 23 septembre 2013
Exercice1: Ecrire un algorithme qui demande successivement des nombres
lutilisateur, et qui calcule le nombre de valeurs saisies. La saisie des nombres
sarrte lorsque lutilisateur entre le caractre n ou N
Exercice2: Ecrire un algorithme qui demande successivement des nombres
lutilisateur, et qui calcule leur moyenne. La saisie des nombres sarrte lorsque
lutilisateur entre un zro.
Exercice3: Modiez lalgorithme de lexercice 1, de faon quil nous renseigne sur
le nombre des valeurs positives et sur le nombre des valeurs ngatives. Ne
comptez pas les valeurs nuls.
Exercice4: Ecrire un algorithme qui lit les caractres saisies par lutilisateur. A la
n ce programme nous afchera la phrase saisie. La saisie des caractres
sarrte lorsquon tape point . . Si lutilisateur veut insrer un espace il lui
suft de tapez sur 0. Par exemple si lutilisateur tape successivement les
caractresb,o,n,j,o,u,r,t,o,u,s, .,Le programme nous
afchera la chane bonjourtous .
Mais si il tape b , o, n, j, o, u, r , 0, t, o, u, s, . , le
programme afchera bonjour tous .
Wassima AKHRIF
La structure REPETER jusqua
lundi 23 septembre 2013
Structure Rptitive
Choisir ?? tant que ? Rpeter ? Pour?
Wassima AKHRIF
lundi 23 septembre 2013

Conclusion

Logique propositionnelle
lundi 23 septembre 2013
!
Le moule dun algorithme:
Algorithme Nom
{Cet algorithme fait..............en utilisant telle et telle donne.........}
Constantes
variables
dbut
{prparation du traitement : saisies,....}
{traitements, si itration, la dcrire }
{prsentation des rsultats: afchages,... }
Fin
!
Il faut avoir une criture rigoureuse
Il faut avoir une criture soigne: respecter lindentation
il est ncessaire de commenter les algorithmes.

!
Il existe plusieurs solutions algorithmiques un problme pos
Il faut rechercher lefcacit de ce lon crit.
CONCLUSION
A Retenir!!
Wassima AKHRIF
lundi 23 septembre 2013
CONCLUSION
Wassima AKHRIF
lundi 23 septembre 2013
Logique Propositionnelle
!
La logique cest une faon de formaliser notre raisonnement.
!
Il nexiste pas une logique mais DES logiques.
!
La logique propositionnelle : modle mathmatique qui nous permet
de raisonner sur la nature vraie ou fausse des expressions logiques.
En quoi la logique est elle utile au programmeur?
Wassima AKHRIF
lundi 23 septembre 2013
Logique Propositionnelle
Wassima AKHRIF
Expression logique est compose de variables propositionnelles et de
connecteurs logiques.
Connecteurs Logiques:
Exemple:
lundi 23 septembre 2013
Logique Propositionnelle
Wassima AKHRIF
Proprit
lundi 23 septembre 2013
Logique Propositionnelle
Fonctions logiques drivs
Wassima AKHRIF
Certaines fonctions logiques drives des fonctions logiques
fondamentales sont intressantes et peuvent faire lobjet dapplications en
informatique. On en retiendra deux: Le ou exclusif et
lquivalence.
lundi 23 septembre 2013
Wassima AKHRIF
!
Le Ou Exclusif ( fonction exclusive):
Le OU tudi jusqu prsent est VRaie lorsque lun ou lautre ou les
deux sont vraie ( il est galment appel OU inclusif).
Le OU exclusif( XOR: eXclusive OR) sentend comme lun ou
lautre mais pas les Deux
!
Lquivalence:
Lquivalence (note EQV) est VRAIE si les deux entres ont la mme
valeur et fausse sinon. Elle est appele aussi non - ou exclusif.
Fonctions logiques drivs
Logique Propositionnelle
lundi 23 septembre 2013
TECHNIQUES DE PROGRAMMATION
STRUCTUREE
ISTA NTIC HAY RYAD
Anne : 2010-2011
Fin partie I
lundi 23 septembre 2013

You might also like