Fiche1 Ex Sous Programme

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 1

Exercice1 : Sous programmes– Fiche 1 -Fonctions & procédures Algorithme du programme principale

Écrire un programme qui permet de saisir Algorithme de la procédure Afficher : Exercice2 : 0) Début calcul
deux entiers a et b >0 puis permuter leurs 0) DEF Proc Afficher( a : entier, b :entier) Écrire un programme qui permet de saisir 1)PROC Saisir(x,y)
valeurs enfin les afficher. 1) Ecrire("a=", a, " b=",b) deux entiers x et y <=9 puis calculer la 2)p ← FN puissance(xy)
Pour résoudre ce problème on va utiliser les 2) Fin Afficher puissance xy enfin afficher le résultat. 3)Ecrire(''X à la puissance y ='',p)
modules suivants : saisir, permuter et afficher 4)Fin calcul
Algorithme de la procédure permuter: Pour résoudre ce problème on va utiliser les Algorithme de la procédure saisir :
Analyse du programme principale :
0) Def proc permuter (VAR a :entier,VAR b :entier) modules suivants : 0)DEF PROC Saisir(var a, var b) ;
Nom : permutation
1) c  a procédure saisir(x,y) 1)Répéter
Résultat= PROC Afficher (a,b)
2) a  b fonction puissance(x,y) Ecrire(''x= '') , lire(x)
(a,b)= PROC permuter (a,b)
3) b  c Ecrire(''y= ''), lire(y)
(a,b)= PROC Saisir (a,b)
4)Fin permuter Analyse du programme principale : Jusqu'a (a<=9) et (y<=9)
Fin Permutation
Nom: calcul 2)Fin saisir
Tableau de Déclaration de Objet Globaux Traduction Pascal : Résultat= Ecrire(''X à la puissance y ='',p) Algorithme de la fonction puissance :
Devoirs et examens sur : www.Kiteb.net

objet Type/nature Program permutation ; p ← FN puissance(x,y) 0)DEF FN puissance(x,y:entier):entier


A,b Entier Uses wincrt ; (x,y)=PROC saisir(x,y) 1) [m ← 1] pour i de 1 à y faire
Afficher, permuter, saisir Procédures Var a,b :integer; objets globaux Fin calcul m ← m*x
Tableau de Déclaration des Objets Globaux FinPour
Analyse de la procédure Afficher :
Procedure saisir( VAR a : integer ; VAR b :integer); 2) puissance ← m
DEF PROC Afficher (a :entier , b :entier) Objets Type/Nature
Begin passage par variable 3)Fin puissance
Résultat=
repeat x , y , p Entier Programme pascal :
Ecrire("a=",a, "b=",b)
writeln(‘a=’) ; readln(a); saisir procédure Program calcul ;
Fin Afficher
writeln(‘b=’) ; readln(b); puissance fonction Uses wincrt ;
Analyse de la procédure permuter :
Def proc permuter ( VAR a : entier, VAR b :entier)
until (a>0) and (b>0); Var x , y , p : integer ;
Résultat=c  a End ; Analyse de la procédure saisir : Procedure saisir(var x,y:integer) ;
paramètres Formels
ab DEF PROC saisir( var x: entier, var y : entier) Begin
Procedure permuter( VAR x :integer; VAR y:integer); Résultat=Répéter
bc Repeat
Var c: integer; objets locaux x=donnée(''x= '')
Fin permuter Writeln('x= ');readln(x) ;
Begin y=donnée(''y= '')
T.D.O locaux Writeln('y= ');readln(y) ;
C:=x; Jusqu'a (a<=9) et (y<=9)
objet Type/nature Until (x<=9) and (y<=9)
x:=y; Fin Saisir
c Entier End ;
y:=c;
Analyse de la procédure saisir: End ; Passage par valeur Analyse de la fonction puissance : Function puissance(x,y:integer):longint ;
DEF PROC Saisir (VAR a : entier, VAR b :entier) DEF FN puissance( x: entier, y : entier) : entier Var i:integer;m:longint ;
Résultat=Répéter Résultat= puissance ← m Begin
Procedure afficher( a : integer ; b :integer);
A=donnée("a=") m= [m ← 1] pour i de 1 à y faire M:=1 ;
Begin
B= donnée("b=") m ← m*x For i:=1 to y do
Writeln(‘a=’,a,’b=’,b);
Jusqu'à (a>0) et (b>0) FinPour M:=m*x
End ;
Fin Saisir Fin puissance
Puissance:=m ;
Begin Tableau de Déclaration des Objets Locaux End ;
Algorithme du programme principal
Saisir(a,b); appel d’une procédure
0) Début permutation Objets Type/Nature Begin
Permuter(a,b);
1) Proc saisir(a,b) saisir(x,y) ;
Afficher(a , b ); m,i Entier
2) Proc permuter(a,b) P:=puissance(x,y) ; appel d’une fonction
End.
3) Proc afficher(a,b) paramètres effectifs Writeln('X à la puissance y =',p) ;
4) Fin permutation End.

Vous aimerez peut-être aussi