EXERCICE N°1

Transcription

EXERCICE N°1
Classe : 3ème SCIENCES DE L’INFORMATIQUE
Date : 03 DECEMBRE 2012
Durée : 2Heure
me
Prof : M LEILA GARMA HASSAYOUN
LYCEE DE BEKALTA
****
DEVOIR DE SYNTHESE N°1
ALGORITHME ET PROGRAMMATION
EXERCICE N°1 : (2 points)
Donner le type et la valeur de chacune des expressions suivantes sachant que :
a:=17.05
b:=-21.56
c:=26
d:=’c’
Les expressions :
EXERCICE N°2 : (3 points)
Soit les algorithmes des deux procédures suivantes :
•
DEF PROC trait1 (var t :tab ;
•
DEF PROC trait2 ( t :tab ; n
n :entier)
:entier)
•
•
Pour i de 1 à (n div 2) faire
bT[i]
bT[i]
T [ i ] T [ n – i + 1]
T [ i ] T [ n – i + 1]
T [ n – i + 1] b
T [ n – i + 1] b
Finpour
•
Pour i de 1 à (n div 2) faire
fin
Finpour
•
fin
• Quels sont les variables locales de la procédure trait1 ?
• Quels sont les paramètres formels de la procédure trait2 ?
• Donner les valeurs contenues dans le tableau T après exécution des deux
procédures sachant que, initialement le tableau est :
Après exécution de la procédure trait1
Après exécution de la procédure trait2
•
Pourquoi les deux résultats sont différents?
EXERCICE N°3 : (3 points)
Ecrire en pascal la déclaration d’une fonction qui permet de calculer la somme des
chiffres d’un entier n donné.
EXERCICE N°4 : (04 points)
Soit un programme qui permet de:
• Saisir les noms de deux personnes (nom1 et nom2)
• Saisir les matricules de leurs voitures (mat1 et mat2)
• Déterminer et afficher le nom de la personne ayant la voiture la plus neuve
sachant que :
• Une matricule est toujours une chaîne de 14 caractères de la forme
NNNNTUNISIESSS (exemple 1234 TUNISIE 102).
• Pour comparer deux matricules, il faut tester en premier lieu les deux
séries (SSS) si elles sont les mêmes, comparer les deux N°(NNNN)
(il n’y a
pas de matricules identiques).
Exemple :
Si la voiture d’ALI porte la matricule 1234 TUNISIE 102
et la voiture de MOHAMED porte la matricule 7890 TUNISIE 100
On demande d’analyser le module qui permet de déterminer et afficher le nom
de la personne ayant la voiture la plus neuve.
EXERCICE N°3 : (08 points)
Pour chercher le chiffre de chance d’une personne, on procède comme suit :
on additionne les chiffres composants la date de naissance de la personne
concernée. Au nombre obtenu, on refait le même procédé jusqu’à ce qu’on obtienne
un nombre composé d’un seul chiffre. Ce nombre est le chiffre de chance.
EXEMPLE :
Soit la date de naissance suivante ’’29/09/1999’’
•
On additionne les chiffres de la date de naissance : 2+9+0+9+1+9+9+9 = 48.
•
48 est composé de deux chiffres, on refait le même traitement : 4+8 = 12.
•
12 est composé de deux chiffres, on refait le même traitement : 1+2 = 3.
•
3 est composé d’un seul chiffre et c’est le chiffre de chance recherché.
QUESTION :
On veut écrire un programme permettant de saisir la date de naissance d’une
personne sous la forme d’une chaîne de caractères ’’jj/mm/aaaa’’ puis d’appliquer la
méthode citée ci-dessus et d’afficher le chiffre de chance trouvé. Pour cela on
demande de :
•
Décomposer le problème en module et donner le rôle de chaque module.
•
Ecrire l’analyse du programme principal ainsi que son algorithme.
•
Pour chaque module envisagé au problème, écrire l’analyse et en déduire
l’algorithme correspondant.