S59614fa77d5399cf.jimcontent.com



Lycée Pilote de SousseDevoir de Contr?leN° 2Année scolaire?: 2013/2014Matière?: InformatiqueDurée?: 1H30MinMr. Med Abdallah ManiClasse?: 4ième TechNom & Prénom?: …………………………………………………….Note?: ……. / 20Exercice 1.(4.5pts)Traduire les expressions suivantes en Pascal puis les évaluer en donnant le type de chaque objet utilisé.Expression1X ← (Abs (Arrondi (8.7)) < racine carrée (25)) Ouex (2<longueur ("l’élève"))TraductionPascalX?:= (Abs (Round (8.7)) < SQRT (25)) XOR (2<Length (‘l’élève’))?;Evaluationd’expressionX=VraiType X : BooléenExpression2Y ← long ("Le "+ souschaine("Le système solaire",4,7 ) + "automatique")TraductionPascalY?:= Length (‘Le ‘+ Copy(‘Le système solaire’,4,7 ) + ‘automatique’)?;Evaluationd’expressionY=21Type Y?:EntierExpression3Ch ← "la valeur exacte du bénéfice=130.795 DT"Effacer (ch,1,20)Valeur (souschaine(ch,10,7),n,e)TraductionPascalCh?:= ‘la valeur exacte du bénéfice=130.795 DT’?;Delete (ch,1,20)?;Val (Copy(ch,10,7),n,e)?;Evaluationd’expressionType ch?: Chaine de Caractères Type n?: RéelType e?:EntierExercice 2. (3.5pts)Soit la procédure suivante?:Procedure remplir(VAR t?:tab?;n?:integer)?;Var i,j?:integer; trouve:Boolean;BeginWriteln(‘t[1]=’);Readln(t[1]);For i:=2 to n do RepeatWrite(‘t[‘,i,’]=’);Readln(t[i]);J:=1;Trouve:=false;RepeatIf t[i]=t[j] then trouve :=true;J:=j+1;Until (trouve=True) or (i= J);Until(trouve=False);End; Compléter la procédureDonner le r?le de la procédure………………Cette procédure permet de remplir un tableau par des valeurs distinctes (l’élément se trouve une seule fois dans le tableau)………………Problème. (12pts)Ecrire un programme qui décrypte un mot construit à partir du code ASCII de lettres majuscules.Exemple :Si la chaine à décrypter est "77658472" le programme affichera "MATH" car :77 est le code ASCII de la lettre M65 est le code ASCII de la lettre A84 est le code ASCII de la lettre T72 est le code ASCII de la lettre HRemarques : Les codes ASCII de [’’A’’..’’Z’’] sont respectivement [65..90]Les modifications sont faites sur la cha?ne elle-même.Donner la décomposition modulaire du Programme PrincipalDonner l’analyse et l’algorithme du programme principalDonner l’analyse des modulesDonner l’algorithme et la traduction en pascal du module de conversion.Décomposition Modulaire?:Programme PrincipalFN ConversionPROC LectureFN VerifChifFN VerifMajAnalyse et Algorithme du Programme PrincipalAnalyse PPAlgorithme PPRésultat = Ecrire (’’La chaine ‘',ch,’' devient '’, FN Conversion(ch))Ch=PROC Lecture (ch)Fin PPT.D.O.GObjetType/NatureR?leChChaine de caractèresConversionFonctionLectureProcédureDébut PPPROC Lecture (ch)Ecrire (’’La chaine ‘',ch,’' devient '’, FN Conversion(ch))Fin PPTraduction Pascal?:PROGRAM MATH;USES WINCRT;VARCH:STRING;I:INTEGER;FUNCTION VERIFCHIF(CH:STRING):BOOLEAN;VAR I:INTEGER;BEGINI:=0;REPEATI:=I+1;UNTIL (I=LENGTH(CH)) OR NOT(CH[I] IN ['0'..'9']);VERIFCHIF:= CH[I] IN ['0'..'9'];END;FUNCTION VERIFMAJ(CH:STRING):BOOLEAN;VARI:INTEGER;BEGINI:=-1;REPEATI:=I+2;UNTIL (I>LENGTH(CH)) OR (COPY(CH,I,2)<'65') OR (COPY(CH,I,2)>'90');WRITELN(COPY(CH,I-2,2));VERIFMAJ := (COPY(CH,I-2,2)>='65') AND (COPY(CH,I-2,2)<='90');END;PROCEDURE LECTURE(VAR CH:STRING);BEGINREPEATWRITELN('DONNER UNE CHAINE CONTENANT LES CODES ASCII DE CARACTERES MAJUSCULES :');READLN(CH);UNTIL (LENGTH(CH) MOD 2=0) AND (VERIFCHIF(CH)) AND (VERIFMAJ(CH));END;FUNCTION CONVERSION(CH:STRING):STRING;VARXCH?:STRING?;X,E?:INTEGER;BEGINI:=1;REPEATXCH:=COPY(CH,I,2);VAL(XCH,X,E);XCH:=CHR(X);DELETE(CH,I,2);INSERT(XCH,CH,I); I:=I+1;UNTIL I>LENGTH(CH)-1; CONVERSION:=CH;END;BEGINLECTURE(CH);WRITELN('La chaine ',ch,' devient ',conversion(ch));END.Bon Travail ................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download