Vous êtes sur la page 1sur 7

Informatique

Classe : 4ème Scientifique

Série : Révision N°1 (théorique)


--------------------------------
S

Nom du Prof : Sarra Saidi


Objectifs :
• Modifier un algorithme en lui apportant des modifications
spécifiques,
• Trace d’exécution d’un algorithme (Tournage à la main),
• Reconnaitre le rôle d’un algorithme,
• Construire un module à partir d’une description,
• Manipulation et tri d’un tableau.

1
Exercice 1 20 min

Soit l'algorithme suivant nommé Ex1 :

Algorithme Ex1 Objet Type


DEBUT
Écrire ("Saisir c1 :")
Lire (c1)
Écrire ("Saisir c2 : ")
Bloc1
Lire(c2)
OkFaux
i  -1
ki
TANTQUE Non(ok) ET ( i < long(c2) -1 ) FAIRE
i  i+1
SI c2[ 0 ] = c1 [ i ] ALORS
c3 souschaine (c1, i, i + long(c2))
SI c3 = c2 ALORS
ok  Vrai
ki
FIN SI
FIN SI
FIN TANTQUE
Ecrire ( k )
FIN

1- Remplir le tableau de déclaration des objets TDO ci-dessus

2
2- Exécuter manuellement cet algorithme et donner la valeur de K qui sera affichée
pour chacun des cas suivants :

C1 C2 Valeur de K
"*122#" "*123#"

"Deux Milles Trois Cents" "milles"

"DEVOIR DE CONTROLE" "DE"

3- Quel est alors le rôle de cet algorithme ?


………….…………………………………………………………………………………………………………………………

4- Y a –t-il une fonction prédéfinie qui réalise le même traitement que cet algorithme ? Oui
/ Non. Si Oui laquelle ? : ……………….…………...

5- Modifier les instructions du Bloc1 afin d’ajouter un contrôle de saisie permettant


d’assurer que la chaine saisie c2 commence obligatoirement par une lettre
………….…………………………………………………………………………………………………………………………
………….…………………………………………………………….……………………………………………………………
……………………………………………………………………….……………………………………………………………
……………………………………………………………………….……………………………………………………………
………….…………………………………………………………………………………………………………………………
6- Convertir la boucle TANTQUE en une boucle REPETER
………….…………………………………………………………………………………………………………………………
………….…………………………………………………………………………………………………………………………
………….…………………………………………………………………………………………………………………………
………….…………………………………………………………………………………………………………………………
………….…………………………………………………………………………………………………………………………
………….…………………………………………………………………………………………………………………………
………….…………………………………………………………………………………………………………………………

3
Exercice 2 10 min
Compléter le module selon le rôle indiqué ainsi que le TDOL associé :

Rôle

Le module suivant permet de vérifier qu’un nombre nb est un nombre Oblong.


Un nombre Oblong est le produit de deux entiers naturels consécutifs strictement positif.
Exemple :
12 est un nombre Oblong car 12=3×4
272 est un nombre Oblong car 272=16×17

Algorithme du Module

………………. Oblong ( nb : ……………… ) …………………


Début
T.D.O.L
i…………..
tant que i < nb -1 et ………………… ≠ …………… faire Objet Type
……………………………… ….…… ………….
fin tant que
retourner ……………… = …………….
Fin

Exercice 3 60 min

Un bateau en détresse a lancé un appel de secours (SOS). Pour le sauver, le commandant


de la garde côte a besoin de localiser le(s) bateau(x) proche(s) de celui-ci. En s’appuyant
sur leurs coordonnés (X, Y) fournis par Je radar du commandant (comme l’illustre
l’exemple de la figure ci-dessous), la localisation des bateaux se fait par le calcul des
distances qui les séparent du bateau en détresse.

4
Le bateau C est à la
position (Xc, Yc)
Le bateau B est à la
position (Xb, Yb)

Position (Xd, Yd)


Du bateau en détresse

Le bateau A est à la
position (Xa, Ya)

Pour aider le commandant de la garde côte, on se propose d'écrire l’algorithme d’un


programme nommé BATEAUX qui permet de :

 Saisir les coordonnées du bateau en détresse (Xd, Yd).


 Saisir les coordonnées de N autres bateaux dans deux tableaux Tx et Ty (avec 1 ≤ N ≤ 50)
où Tx contient les abscisses et Ty contient les ordonnées. Il est à noter que deux bateaux
(y compris le bateau en détresse) ne peuvent pas avoir les mêmes coordonnées.
 Remplir un tableau Td par les distances qui séparent les différents bateaux du bateau en
détresse.
 Afficher les coordonnées (X, Y) des bateaux, du plus proche au plus loin du bateau en
détresse.

N.B. : La distance dAB qui sépare deux points A et B de coordonnées respectives (Xa, Ya) et
(Xb, Yb) est calculée comme suit :

dAB =√ (𝐗𝐛 − 𝐗𝐚)𝟐 + (𝐘𝐛 − 𝐘𝐚)𝟐

5
Exemple :

Pour les coordonnées du bateau en détresse (Xd, Yd) = (500, 300), le nombre de
bateaux N = 5 et les deux tableaux Tx et Ty suivants :

Tx 1000 500 100.25 -350 1200


1 2 3 4 5

Ty -300 400 -90 75 358.14


1 2 3 4 5

Le calcul des distances donne le tableau Td suivant :

Td 781.02 100 558.48 879.28 702.41


1 2 3 4 5

Le programme affiche les coordonnées des bateaux dans l'ordre suivant :

(500, 400) (100.25, -90) (1200, 358.14) (1000, -300) (-350, 75)

Travail demandé :

1. Déduire l’algorithme du problème en le décomposant en modules.


2. Écrire l’algorithme de chaque module envisagé.

Vous aimerez peut-être aussi