correction

4 476 vues

Publié le

http://www.facebook.com/Bac.2012.Avec.Mention

0 commentaire
2 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
4 476
Sur SlideShare
0
Issues des intégrations
0
Intégrations
8
Actions
Partages
0
Téléchargements
327
Commentaires
0
J’aime
2
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

correction

  1. 1. Solutionnaire Du Devoir De Synthèse N°1 (2010/2011) Classes : 4 SIExercice 1 (4 pts) a. Lire (F, C) : cette instruction est correcte. 0.5 pts b. Ecrire (F2, ch) : cette instruction n’est pas correcte car ch est de type chaîne, F2 de type FReel, les types ne sont pas compatibles. 0.75 pts = 0.25+0.5 c. Pointer (F1, 8) : cette instruction n’est pas correcte car la procédure Pointer permet d’accéder à l’enregistrement n° 8 du fichier F1, or F1 est de type texte et l’accès à ce fichier est séquentiel. 0.75 pts = 0.25+0.5 d. Ecrire (F, TC[j]) : cette instruction est correcte. 0.5 pts e. Ecrire (F, C.Solde) : cette instruction n’est pas correcte car l’instruction Ecrire permet d’écrire dans un fichier la totalité d’un enregistrement, or C.Solde est un champ d’enregistrement. 0.75 pts = 0.25+0.5 f. Lire_nl (F2, j) : cette instruction n’est pas correcte car l’instruction Lire_nl permet de lire le contenu d’une ligne d’un fichier texte or F2 est de type FReel et pointe la prochaine ligne. 0.75 pts = 0.25+0.5Exercice 2 (4 pts) 0.5 pts a. La fonction Inconnue retourne un résultat booléen. b. Voici la liste des appels récursifs : · Inconnu (2, 7) Inconnu (2, 7) vrai 1.25 pts = 1 + 0.25 2 > 7 div 2 = 3 Faux 7 mod 2 = 1 ≠ 0 Inconnu (3, 7) vrai 3 > 3 Faux 7 mod 3 = 1 ≠ 0 Inconnu (4, 7) vrai 4>3 Vrai Inconnu (2, 7) = Vrai · Inconnue (2, 25) Inconnu (2, 25) Faux 1.75 pts = 1.5 + 0.25 2 > 25 div 2 = 12 Faux 25 mod 2 = 1 ≠ 0 Inconnu (3, 25) Faux 3 > 25 div 3 = 8 Faux Classes : 4 SI 25 mod 3 = 1 ≠ 0 Inconnu (4, 25) Faux 4 > 25 div 4 = 6 Faux 25 mod 4 = 1 ≠ 0 Inconnu (5, 25) Faux 5 > 5 Faux 25 mod 5 = 0 Faux© Correction réalisée par: B.BEYA Hassen Page 1 sur 6
  2. 2. Solutionnaire Du Devoir De Synthèse N°1 (2010/2011) Classes : 4 SI Inconnu (2, 25) = Faux c. Le rôle de la fonction Inconnue permet de tester est-ce que le nombre n est premier ou non. 0.5 ptProblème (12 points)Barème ANALYSESPP 1,5 pts = 0,5 cohérence + 0,5 modularité + 0.5 algorithmeCréation 0 ,5 pt = 0.25 par fichierSaisie 2, 5 pts = · 0,25 pt = en tête + mode de passage des paramètres · 0,25 pt = répéter et condition d’arrêt · 1,75 pts = 0, 5 structure Avec + 0,25*5 lecture des champs · 0,25 pt = écriture dans le fichierTransfert 1,25 pts = · 0,25 pt = en tête + mode de passage des paramètres · 0, 25 pt ouverture + taille de fichier · 0,25 pt boucle pour · 0,5 pt traitementTri 1,25 pts = · 1.25 pts traitementRemplir 2,75 pts = · 0,25 pt = en tête + mode de passage des paramètres · 0,25 pt écriture dans le fichier frecette · 0,25 pt boucle pour · 0,25 pt test + 0,25 pt écriture dans le fichier frecette · 0,25 pt écriture dans le fichier frecette · 0,25 pt boucle pour · 0,25 pt test + 0,25 pt calcul du total · 0,25 pt écriture dans le fichier frecette · 0,25 pt date saisieAffiche 1 pt = · 0,25 pt = en tête + mode de passage des paramètres · 0,25 ouverture+fermeture · 0, 25 structure Tant que · 0,25 lecture+affichageDivers : Classes : 4 SI - T.D.N.T 0,75 pts - T.D.O 0,5 pts© Correction réalisée par: B.BEYA Hassen Page 2 sur 6
  3. 3. Solutionnaire Du Devoir De Synthèse N°1 (2010/2011) Classes : 4 SIAnalyse du programme principalNom : Gestion_ArticleRésultat = Proc Affiche (frecette)(frecette) = Proc Remplir (frecette, Tart)Tart = Proc Tri (Tart, n)(n, Tart) = Proc Transfert (fart, Tart, n)fart = Proc Saisie (fart)(fart, frecette) = Proc Creation(fart, frecette)Fin Gestion_ArticleTableau.de déclaration des nouveaux types Type Date = Enregistrement j : 1..31 m : 1..12 a : entier Fin Date Article = Enregistrement Num : entier des : chaîne [20] mat : chaîne dv : Date qv : Entier pu : Réel Fin Article Farticle = Fichier de Article Tab = Tableau de 100 ArticleTableau de déclaration des objets globaux Objet Type/Nature Rôle frecette Texte Fichier texte fart Farticle Fichier d’articles Tart Tab Tableau d’enregistrement article n entier Nombre d’articles Creation Procédure Création de deux fichiers Saisie Procédure Remplissage du fichier fart Tri Procédure Trier le tableau Tart Transfert Procédure Transférer les données de fart vers Tart Remplir Procédure Remplir le fichier frecette à partir de Tart Affiche Procédure Afficher les éléments du fichier frecetteAlgorithme du programme principal Classes : 4 SI 0) Début Gestion_Article 1) Proc Creation(fart, frecette) 2) Proc Saisie (fart) 3) Proc Transfert (fart, Tart, n) 4) Proc Tri (Tart, n) 5) Proc Remplir (frecette, Tart)© Correction réalisée par: B.BEYA Hassen Page 3 sur 6
  4. 4. Solutionnaire Du Devoir De Synthèse N°1 (2010/2011) Classes : 4 SI 6) Proc Affiche (frecette) 7) Fin Gestion_ArticleAnalyse de la procédure Creation⓪DEF PROC Création (Var fart : Farticle ; Var frecette : texte)Résultat = fart, frecettefart = ②Recréer (fart)fart = ①Assigner (fart, ‘’C:BAC2011ARTICLES.DAT’’)frecette = ④Recréer (frecette)frecette = ③Assigner (frecette, ‘’C:BAC2011RECETTES.TXT)⑤Fin CreationAnalyse de la procédure Saisie⓪DEF PROC Saisie (var far : Farticle)Résultat =[ ] ①Répéter Numero = donnée Si numero > 0 Alors Avec a Faire Num ← numero Des = donnée Ch1 ← sous-chaîne (des, 1, 2) Convch( Num, chnum) Mat ← concat(ch1, chnum) Avec dv Faire j = donnée m = donnée a = donnée Fin Avec qv =donnée pv =donnée Fin Avec Ecrire (fart, a) Fin Si Jusqu’à (numero ≤ 0)fart = ②Fermer (fart)③Fin Saisie Tableau de déclaration des objets locaux Objets Type /Nature a Article numero entier Classes : 4 SI Ch1, chnum chaîne© Correction réalisée par: B.BEYA Hassen Page 4 sur 6
  5. 5. Solutionnaire Du Devoir De Synthèse N°1 (2010/2011) Classes : 4 SIAnalyse de la procédure Transfert⓪DEF PROC Transfert (var fart: farticle; var Tart: Tab; var n : entier)Résultat =[fart = ①Ouvrir (fart), ②n←Taille_Fichier(fart) ] ③Pour i de 1 à n faire Lire (fart, V) Tart[i] ← V Fin Pourfart = ④Fermer (fart)⑤Fin Transfert Tableau de déclaration des objets locaux Objets Type /Nature v Article i entierAnalyse de la procédure Tri⓪DEF PROC Tri (var Tart : Tab ; N : entier)Résultat = ③Tant que (p ≠ 0) faire p ← (p div 3) Pour i de p à N Faire k ← Tart[i] (* Valeur à insérer *) (* Recherche de la position dinsertion *) j← i Tant que (j>p-1) et (Tart[j-p].qv * Tart[j-p].pu > k) faire Tart[j] ← Tart[j-p] j ←j-p Fin Tant que (* Insertion de la valeur à son emplacement *) Tart[j] ← k Fin Pour Fin Tant queP= [①p ←0] ②Tant que (p < N) faire p ← (3*p+1) Fin Tant que④Fin Tri Tableau de déclaration des objets locaux Objets Type /Nature k Article i,j,p entier Classes : 4 SI© Correction réalisée par: B.BEYA Hassen Page 5 sur 6
  6. 6. Solutionnaire Du Devoir De Synthèse N°1 (2010/2011) Classes : 4 SIAnalyse de la procédure Remplir⓪DEF PROC Remplir (var frecette : Texte ; Tart : Tab)Résultat =[①recréer (frecette), ⑦Ecrire_nl(frecette, ‘’Matricule des articles vendus’’, ‘’ ‘’, ‘’Recette’’)]⑧Pour j de 1 à n faire Si (Tart[j].dv.j = ds.j) et (Tart[j].dv.m = ds.m) et (Tart[j].dv.a = ds.a) Alors Ecrire_nl (frecette, Tart[j].Mat, ‘’ ‘’, pu * qv) Fin Si Fin Pour⑥Ecrire_nl (frecette, ‘’Recette total du jour’’, ‘’ ‘’, total)Total = [④ total ← 0 ]⑤Pour j de 1 à n faire Si (Tart[j].dv.j = ds.j) et (Tart[j].dv.m = ds.m) et (Tart[j].dv.a = ds.a) Alors total ← total + ( Tart[j].qv * Tart[j].pu) Fin SiFin Pour③Ecrire_nl (frecette, ‘’Articles vendus le :’’, ds.j, ‘’/‘’, ds.m, ‘’/‘’, ds.a)Ds = [ ] ②Avec ds Faire j = donnée m = donnée a = donnée Fin Avecfrecette = ⑨Fermer (frecette)⑩Fin Remplir Tableau de déclaration des objets locaux Objets Type /Nature j entier ds Date total RéelAnalyse de la procédure Affiche⓪DEF PROC Affiche (Var frecette : texte)Résultat =[frecette = ①Ouvrir (frecette) ] ②Tant que Non (fin_fichier(frecette)) Faire Lire_nl (frecette, ligne) Ecrire_nl(ligne) Fin tant quefrecette = ③Fermer (frecette)④Fin Affiche Tableau de déclaration des objets locaux Classes : 4 SI Objets Type /Nature ligne chaîne© Correction réalisée par: B.BEYA Hassen Page 6 sur 6

×