Sie sind auf Seite 1von 2

L.S Mhamdia M.

Bassem Guetif

Série N° 4
Sous programmes

EX1
Transformer la fonction suivante en une procédure :
Function SOM_DIV(X :integer) :integer ;
Var
i,S :integer ;
Begin
S :=0 ;
For i :=1 to X div 2 do
If (X mod i)=0 then S :=S+i ;
SOM_DIV :=S ;
End ;

Transformer la procédure suivante en une fonction :


Procedure SOM_TAB(V :Tab ;N :integer ;Var X :integer) ;
Var
i :integer ;
Begin
X :=V[1] ;
For i :=2 to N do
X :=X+V[i] ;
End ;

EX2
Soit la somme Sn suivante :
Sn=1+3/22 + 5/33 +7/44 +….. +(2n-1)/nn
On désire écrire un programme intitulé SOMME permettant de calculer et d'afficher
la somme Sn pour un entier n positif donné en utilisant la formule ci-dessus.
Questions :
1- Décomposer le problème en modules
2- Faire l’analyse et l’algorithme de chaque module
N.B : La solution doit comporter au moins deux modules.

EX3
Ecrire des sous programmes et un programme principal permettant de lire une
chaîne de caractère CH (formée uniquement par des lettres minuscules), la

3SI1
1
L.S Mhamdia M. Bassem Guetif

compresser et l'afficher. La chaîne est compressée comme suit : chaque fois qu'on
trouve une suite de caractères semblables, on ne retient que le caractère et le nombres
de répétitions. S'il n'y a pas de répétition, le caractère est marqué tout seul.
EX4
T étant un tableau d’entiers contenant au maximum 40 éléments. Ecrire une
analyse et un algorithme d’un programme permettant :
- De saisir N éléments du tableau T (0<N<40).
- De permuter les éléments successifs du tableau T (deux par deux)
- D’afficher le tableau T après permutation.
Exemple :
Après
1 2 3 4 5 6 2 1 4 3 6 5
permutation :

EX5
On se propose d’écrire un programme permettant de saisir les éléments d’un tableau
T de N entiers de 3 chiffres chacun (N est une constante) puis de chercher et
d’afficher les nombres symétriques de ce tableau.
Exemple :
424 715 133 121 454 616 566
1 2 3 4 5 6 7

Le programme affichera les nombres symétriques de T sont : 424, 121 454, 616
N.B : La solution doit comporter au moins deux modules.
EX6
Ecrire un programme permettant de remplir une matrice carrée de n*n éléments de
type entiers strictement positifs, et affiche le minimum et le maximum dans des
éléments de la matrice, ainsi que leurs coordonnées.

Exemple :

5 3 2 3
M: 10 14 4 9
0 8 1 7
6 20 3 1

 Le programme affichera :
- max = 20 (4,2)
- min = 0 (3,1)

3SI1
2

Das könnte Ihnen auch gefallen