Vous êtes sur la page 1sur 4

Chapitre 3 : Sous programmes 3SI ALGP

Classe : 3me année SI Matière : INFORMATIQUE

Série 3
Les sous programmes

Pour chaque exercice répondre à ces questions :


1) Analyser le problème et le décomposer en modules,
2) Analyser chacun des modules,
3) Déduire un algorithme pour chaque module ainsi qu’un algorithme pour le
programme principal,
4) Traduire le programme en Pascal.
Exercice N°1

Exercice N°2

Exercice N°3
Ecrire un programme qui lit une chaine ch non vide, dont la taille ne dépasse pas 100
caractères et commence par une lettre majuscule. Le programme détermine puis affiche :
1. La somme des chiffres de la chaine
2. Le nombre de voyelles
3. Le nombre de consonnes
4. Une chaine formée seulement des lettres alphabétiques de ch

Réalisée par: Mdme Fehri Mejri Hanen Page 1 sur 4


Chapitre 3 : Sous programmes 3SI ALGP
Exemple
Pour ch= "Bonne année 2015" le programme affiche :
La somme des chiffres est :6
5. Le nombre de voyelles :4
6. Le nombre de consonnes est :6
7. La chaine alphabétique obtenu : "Bonne année "
Exercice N°4
Soit le programme pascal suivant :
Program traitement ; Procedure saisie (var ph:string);
Uses wincrt ; Begin
Var texte :string ; Repeat
X:integer; Readln(ph);
Until (ph<>’’);
Function somme(ch : string):integer; End;
Var e,n,I,s:integer; Begin {programme principal}
Begin Saisie(texte);
S:=0; X:=somme(texte);
For i:=1 to length(ch) do Write(X) ;
Begin End.
If (ch[i] in [‘0’..’9’]) then begin
Val(ch[i],n,e);
S:=s+n;
End;
End;
Somme:=s;
End;
1) Déterminer les objets globaux, locaux, paramètres effectifs et formels de ce
programme
2) Exécuter manuellement le programme pour Texte=’2 Info 2012’
3) Déduire le rôle de la fonction somme
Exercice N°5
0) DEF FN Inconnue ( Ch : …………,P,n :…………) : …………
1) PH ‘’
Pour i de p à p+n do
PH concat (ph, Ch[i])
Fin pour
2) Inconnue  PH
3) Fin Inconnue
Questions :
1) Compléter l’en tête de la fonction (1 point)
2) Exécuter l’algorithme pour Ch= "Examen", P=4 et n=3 puis donner le résultat renvoyé
par la fonction
3) Proposer le nom de la fonction prédéfinie Pascal qui fournit le même résultat

Réalisée par: Mdme Fehri Mejri Hanen Page 2 sur 4


Chapitre 3 : Sous programmes 3SI ALGP

Exercice N°6
Soit T un tableau de n (2<n<=45) chaînes de caractères non vides et dont la taille maximale
est égale à 30 caractères. Les chaînes du tableau doivent comporter seulement des
alphabétiques ou des chiffres.
Ecrire un programme permettant de remplir le tableau T et de déterminer un tableau T1 qui
contient le nombre de chiffres de chaque chaîne s’ils existent.
Exemple
Pour N=8 et le tableau T suivant :
Ra2b1w B2wP4 Bonjour Sincere2012 Alpha N145W T47WC ABCD

Le programme détermine puis affiche le tableau T1 suivant :

2 2 0 4 0 3 2 0

Exercice N°7

Exercice N°8 Max algo recurrents


On souhaite trouver parmi les entiers de l’intervalle [100..500] les entiers qui
admettent le plus grand nombre de diviseurs. Pour cela écrire un programme permettant de
chercher puis d’afficher ces entiers ainsi que le nombre de leurs diviseurs.

Exercice N°9 : Algo Tri Recherche


Soit n un entier naturel non nul. On se propose de déterminer le plus grand entier
formé par tous les chiffres de n (sans omission ni répétition).
Exemple : Pour n = 2831, le plus grand nombre qu’on pourra former est 8321.
Pour n = 54959, le plus grand nombre qu’on pourra former est 99554.

Exercice N°10
Ecrire un programme intitulé Codage permettant de lire un mot non vide et dont la taille
maximale est égale à 50 caractères, de coder le mot caractère par caractère en ajoutant 2 à la
valeur du code ASCII utilisé pour représenter le nouveau caractère correspondant au nouveau
code. Le mot codé est enfin affiché.
Exemple
Pour le mot="INFO2007" le programme affiche la chaine codée : "KPHQ4229"

Réalisée par: Mdme Fehri Mejri Hanen Page 3 sur 4


Chapitre 3 : Sous programmes 3SI ALGP

Exercice N°11

Exercice N°12
Un entier strictement positif M à N chiffres est dit nombre de Kaprekar si lorsqu’on élève M
au carré, la somme du nombre composé des N chiffres de droite et du nombre formé par le
reste des chiffres redonne ne nombre d’origine.
Exemple :
92 = 81 et 1 + 8 = 9
452 = 2025 et 25 + 20 = 45
2972 = 88209 et 88 + 209 = 297
1) Analyser le problème en le décomposant en modules.
2) Analyser les modules envisagés dans la réponse à la question n°1.
3) Déduire les algorithmes à partir des analyses faites dans les questions 1) et 2).

Réalisée par: Mdme Fehri Mejri Hanen Page 4 sur 4