Commissariat Régional de l’Education de Monastir
Section : Mathématique, Science expérimentales &
Science techniques
Devoir de synthèse n°3
Epreuve : Informatique
Niveau : 4 ème année Date : Mardi 13/05/2025. Durée : 3 heures
Nom & Prénom : ………………………… Classe : ………….. Note : ………/20
Le sujet comporte 3 pages numérotées de 1/3 à 3/3.
Les réponses à l’exercice 1 et à l’exercice 2 doivent être rédigées sur cette même
feuille qui doit être remise avec la copie d’examen à la fin de l’épreuve.
Exercice N°1 : (4 points)
Soit le module suivant :
Module traitement (p : entier ; @ m : entier ; @ T : Tab )
Début
Pour i de p à m-2 Faire
T[i] T[i+1]
Fin Pour
mm-1
Fin
Tab : est un tableau de 100 caractères
Travail demandé : cocher la bonne réponse
a) Quelle est la nature de ce module traitement :
Fonction Procédure
b) Quelle est la nature du tableau de déclaration des objets TDO, de ce module traitement :
TDO Locaux TDO Globaux
c) Quel sera le TDO de ce module traitement :
TDO TDO
Objet Type Objet Type
i entier i,p,m Entier
T tab
d) Au niveau du programme principal, on a un tableau T, rempli par m caractères (m = 7) et un entier p = 2:
T "C" "H" "4" "A" "N" "C" "E"
0 1 2 3 4 5 6
Comment peut-on appeler le module traitement ? :
traitement (T, p, m ) traitement (p : entier ; @ m : entier ; @ T : Tab )
(m,T) traitement (p ,m ,T ) traitement (p, m ,T )
e) Après l’appel du module traitement (la question précédente) , Quel est contenu du tableau T :
T "C" "H" "A" "N" "C" "E" "E"
0 1 2 3 4 5 6
T "C" "H" "A" "N" "C" "E"
0 1 2 3 4 5
f) Quel est le rôle du module traitement :
……………………………………………………………………………………………….
……………………………………………………………………………………………….
Page : 1 / 3
Exercice 2 : (5 points)
Soit la fonction suivante :
Fonction Trouver(X,pas :…….….) : ………… Fonction Quoi(X :…………..) : ……………….
Debut Debut
TantQue Quoi(X)=Faux Faire RX>1
XX+pas i2
Fin TantQue TantQue R et i<=racine_carre(X)Faire
Retourner X RX mod i ≠0
Fin ii+1
TDO de Trouver Fin TantQue TDO de Quoi
Objet Type
Retourner R Objet Type
Fin
1. Compléter la fonction Quoi et la fonction Trouver ainsi que les TDOL
2. Quel est le résultat de la fonction quoi pour X=10 puis pour X=17
X =10
R
i
Quoi (10) = …………….
X =17
R
i
Quoi (17) = …………….
3. Quel est le rôle de la fonction Quoi
……………………………………………………………………………………………………………………
…………………………………………………………………………………….………………………………
4. Quel est le résultat de Trouver dans chaque appel :
Trouver(10,1) = ………………….
Trouver(15,-1)= …………………
5. Quel est le rôle de la fonction Trouver
……………………………………………………………………………………………………………………
…………………………………………………………………………………….………………….…………
Page : 2 / 3
Problème : (11 points)
On vous demande de réaliser un programme qui permet d'afficher l'itinéraire que doit suivre un commerçant pour
visiter N villes données en passant une seule fois par chacune.
La stratégie repose sur le fait qu'à chaque étape, la prochaine ville à visiter sera la ville la plus proche que le
commerçant n'a pas encore visitée.
Pour vérifier, à chaque fois, si une ville est déjà visitée ou non, nous utiliserons un tableau B de type Tab
contenant autant de cases booléennes que de villes.
Pour déterminer la ville la plus proche (VPP), on fait appel à une procédure appelée VPP dont l’entête est :
Procédure VPP ( @ VD : chaîne , @ B : Tab ) , ou le candidat n’est pas appelé à la développée.
En effet, le programme doit :
remplir un tableau V par N noms de villes alphabétiques majuscules distinctes avec 2 ≤ N ≤ 24
saisir le nom de la ville de départ VD qui doit être alphabétique majuscule et qui doit figurer dans le tableau
V
afficher l'itinéraire que doit suivre le commerçant pour visiter toutes les villes, puis rejoindre la ville de départ
Exemple :
Pour N = 5 :
V:MONASTIR TOZEUR JANDOUBA NABEUL TUNIS
1 2 3 4 5
B: Faux Faux Faux Faux Faux
1 2 3 4 5
Pour VD = "MONASTIR", l’appel de VPP donne VD = "NABEUL" et B :
Faux Faux Faux Vrai Faux
1 2 3 4 5
Pour VD = "NABEUL", l’appel de VPP donne VD = "TUNIS" et B :
Faux Faux Faux Vrai Vrai
1 2 3 4 5
Pour VD = "TUNIS", l’appel de VPP donne VD = "JANDOUBA" et B :
Faux Faux Vrai Vrai Vrai
1 2 3 4 5
Pour VD = "JANDOUBA", l’appel de VPP donne VD = "TOZEUR" et B :
Faux Vrai Vrai Vrai Vrai
1 2 3 4 5
Pour VD = "TOZEUR", l’appel de VPP donne VD = "MONASTIR" et B :
Vrai Vrai Vrai Vrai Vrai
1 2 3 4 5
Le programme affichera : MONASTIR, NABEUL, TUNIS, JANDOUBA, TOZEUR, MONASTIR
Travail demandé :
On vous demande d’élaborer :
1) L’algorithme du programme principal, solution à ce problème, en le décomposant en modules.
2) L’algorithme de chaque module envisagé dans l’algorithme du programme principal.
N.B : la solution doit comporter au moins trois modules autres que la procédure VPP.
Page : 3 / 3