sc2mosta
LE LANGAGE DE PROGRAMATION PASCAL .
 
AccueilPortailGalerieFAQRechercherS’enregistrerConnexion
Répondre au sujet
 

TD NO 03

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Admin
Admin



Age : 47
Inscrit le : 15 Mar 2008
Messages : 22

MessageSujet: TD NO 03   Mer 26 Mar - 12:14

Fiche TD N°3

Exercice N° 01 :
Ecrire un programme en Pascal qui permet de faire entrer une
suite de valeurs au clavier en utilisant une sentinelle en fin de liste, ces nombres
sont rangés dans un tableau. Calculer la somme de cet ensemble et la moyenne.

Exercice N° 02 :
Ecrire un programme en Pascal qui recherche le minimum
d’une liste de nombres entrés au clavier et rangée dans un tableau.

Exercice N° 03 :
Ecrire un programme en Pascal qui calcul la moyenne d'une
suite de notes en terminant la saisie par -1. A chaque saisie on vérifie que la
note est bien sur l'intervalle de 0 à 20.

Exercice N° 04:
Ecrire un programme en Pascal qui permet à partir d'une suite
L de nombres entrés au clavier en utilisant une sentinelle en fin de 1iste, et d'une
valeur X -; construire deux tableaux U et V tel-que U contient tous les nombres
inférieur à X et V contient tous les nombres supérieur ou égal à X.

Exercice N° 05:_
Ecrire un programme en Pascal qui permet la saisie et l'affichage d'une matrice.

Exercice N° 06 :
Ecrire un programme en Pascal qui calcul la somme de deux
matrices A et B.

SOLUTION TD NO 03


Exercice N° 01 :

PROGRAM td03ex01 ;
CONST
St = 999 ;
N = 100;
TYPE
Indice = ARRAY[1..N] of INTEGER ;
Vect = ARRAY[indice] of REAL;
VAR
I , j : indice ;
S , moy : real ;
Tab : vect ;
Fin : INTEGER ;
BEGIN
I := 1 ;
S := 0 ;
Fin := 0 ;
WHILE fin <>1 DO
BEGIN
READ( tab[ I ] ) ;
IF tab[ I ] <> ST THEN
BEGIN
S := S + tab[ I ] ;
Moy := S / I ;
I := I + 1
END
ELSE
FIN := 1
END;
FOR j := 1 TO I DO
WRITELN( tab[j] );
WRITELN ( ‘La somme est = ‘ , S );
WRITELN (‘La moyenne est = ‘, moy ) ;
END.


EXERCICE NO 02 :

PROGRAM td03ex02 ;
CONST
N = 100;
TYPE
Indice = ARRAY[1..N] of INTEGER ;
Vect = ARRAY[indice] of REAL;
VAR
I , j : indice ;
min : real ;
Tab : vect ;
BEGIN
READ( tab[ 1 ] ) ;
Min := tab[ 1 ] ) ;
FOR I := 2 TO N DO
BEGIN
READ( tab[ I ] ) ;
IF tab[ I ] < min THEN
Min := tab[ I ]
END
FOR I := 1 TO N DO
WRITELN( tab[ I ] );
WRITELN( 'Le minimum est : ',min );
END.


EXERCICE NO 03 :

PROGRAM td03ex03 ;
TYPE
Indice = ARRAY[1..N] of INTEGER ;
Vect = ARRAY[indice] of REAL;
VAR
I , j : indice ;
S , moy : real ;
Note : vect ;
Fin : INTEGER ;
BEGIN
I := 1 ;
S := 0 ; Fin := 0 ;
WHILE fin <>1 DO
BEGIN
READ( note[ I ] ) ;
IF note[ I ] <> -1 THEN
IF (note[ I ] < = 20 and note[ I ] >= 0) THEN
BEGIN
S := S + note[ I ] ;
Moy := S / I ;
I := I + 1
END
ELSE
Fin := 1
END;
FOR j := 1 TO I DO
WRITELN( Note[j] );
WRITELN (‘La moyenne est = ‘, moy ) ;
END.


Exercice N° 04 :

PROGRAM td03ex04 ;
CONST
St = 999 ;
N = 100;
TYPE
Indice = ARRAY[1..N] of INTEGER ;
Vect = ARRAY[indice] of REAL;
VAR
I , j , k , m : indice ;
X : real ;
L , U , V : vect ;
Fin : INTEGER ;
BEGIN
I := 1 ;
J := 1 ;
K:= 1 ;
S := 0 ;
Fin := 0 ;
WHILE fin <>1 DO
BEGIN
READ( L[ I ] ) ;
IF L[ I ] <> ST THEN
BEGIN
IF L[ I ] < X THEN
BEGIN
U[ J ] := L[ I ] ;
J := J + 1
END;
IF L[ I ] >= X THEN
BEGIN
V[ k ] := L[ I ] ;
k := k + 1
END;
I := I + 1
END
ELSE
FIN := 1
END;
FOR m := 1 TO I DO
WRITELN( L[m] );
FOR m := 1 TO j D
WRITELN( U[m] );
FOR m := 1 TO k DO
WRITELN( V[m] );
END.


Exercice N° 05 :

PROGRAM td03ex05 ;
CONST
M = 100 ;
N = 100 ;
TYPE
Indice1 = ARRAY[1..N] of INTEGER ;
Indice2 = ARRAY[1..M] of INTEGER ;
matrice = ARRAY[indice1 , indice2] of REAL;
VAR
I : indice1 ;
J : indice2 ;
Mat : matrice ;
BEGIN
FOR I := 1 TO N DO
FOR J := 1 TO M DO
READ(mat[ I, J ]);
FOR I := 1 TO N DO
FOR J := 1 TO M DO
WRITELN(mat[ I, J ]);
END.


Exercice N° 06 :

PROGRAM td03ex06 ;
CONST
M = 100 ;
N = 100 ;
TYPE
Indice1 = ARRAY[1..N] of INTEGER ;
Indice2 = ARRAY[1..M] of INTEGER ;
matrice = ARRAY[indice1 , indice2] of REAL;
VAR
I : indice1 ;
J : indice2 ;
A , B , S : matrice ;
BEGIN
FOR I := 1 TO N DO
FOR J := 1 TO M DO
READ(A[ I , J ] , B[ I , J ]);
FOR I := 1 TO N DO
FOR J := 1 TO M DO
S[ I, J ] := A[ I , J ] + B[ I , J ] ;
FOR I := 1 TO N DO
FOR J := 1 TO M DO
WRITELN(A[ I, J ] , B[ I , J ] , S[ I , J ]) ;
END.
Revenir en haut Aller en bas
Abed Ais
Invité




MessageSujet: correction td 3 exo06(tp)   Ven 2 Mai - 19:42

program fonction;
var
a,b,c: real;
begin
read(a,b) ;
if a:=0 then
c:=0
else
c:=exp(b*ln(a));
write(a,'**',b,' =',c);
end.
Revenir en haut Aller en bas
LAKRED HISHAM




Age : 20
Inscrit le : 27 Avr 2008
Messages : 1

MessageSujet: k   Ven 2 Mai - 20:40

Abed Ais a écrit:
program fonction;
var
a,b,c: real;
begin
read(a,b) ;
if a:=0 then
c:=0
else
c:=exp(b*ln(a));
write(a,'**',b,' =',c);
end.
Revenir en haut Aller en bas
omrani h
Invité




MessageSujet: solution de l'exercice TP de la fiche TD N°3   Ven 16 Mai - 22:54

var a,b,res1,i:integer ;
res2:real ;
begin
write('entrez a=') ;
readln(a);
write('entrez b=') ;
readln (b) ;
if b<>0 then
begin
if a=o then
begin
writeln(a, '**' ,b, '=' ,0) ; readln ;
end
else
begin
res1:=a;
for i:=1 to b-1 do
res1:=resl*a;
writeln(a, '**' ,b, '=' ,res1);
res2:=int(exp(b*ln(a))) ;
write('exp** ' ,b, '*' , ' ln(' ,a, ') ','=' , res2) ;
readln;
end ;
end
else
begin
writeln(a, '**' ,b, '=',1) ;
readln(a, ' ** ' ,b, '=',1) ;
end;
end.
Revenir en haut Aller en bas

TD NO 03

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous pouvez répondre aux sujets dans ce forum
sc2mosta :: TD et SUJET,CORRECTION ET NOTES EMD-
Répondre au sujet