éNoncés+corrections bac2011

11

Click here to load reader

Transcript of éNoncés+corrections bac2011

Page 1: éNoncés+corrections bac2011

Année Scolaire : 2011-2012 4 SC

Lycée Attarine Ariana 2012

REPUBLIQUE TUNISIENNE

MINISTERE DE L’EDUCATION

EXAMEN DU BACCALAUREAT - SESSION DE JUIN 2011

SECTIONS: Mathématiques + Sciences Expérimentales + Sciences Techniques

EPREUVE PRATIQUE D’INFORMATIQUES Durée : 1h Coefficient : 0.5

DATE : 24 mai 2011 à 8h 30mn

Sujet

Ecrire un programme Pascal qui permet de:

lire un entier positif n de 2 chiffres

lire un entier positif p de 3 chiffres

former et afficher un entier res de 5 chiffres à partir des deux entiers n et p et ceci

en intercalant l'entier p entre les deux chiffres de n.

Exemple: Pour n=14 et p= 258, l'entier res sera égal à 12584

Grille d’évaluation

Questions Nombre de points

Décomposition en modules utiles à la solution proposée (déclarations et appels) 4

Si exécution et test réussis

Sinon

Compilation

Structures de données adéquates au problème

Saisie et contrôle des données

Traitement avec les structures de contrôles adéquates

Affichage du résultat

16

3

2

4

5

2

Page 2: éNoncés+corrections bac2011

Année Scolaire : 2011-2012 4 SC

Lycée Attarine Ariana 2012

REPUBLIQUE TUNISIENNE

MINISTERE DE L’EDUCATION

EXAMEN DU BACCALAUREAT - SESSION DE JUIN 2011

SECTIONS: Mathématiques + Sciences Expérimentales + Sciences Techniques

EPREUVE PRATIQUE D’INFORMATIQUES Durée : 1h Coefficient : 0.5

DATE : 24 mai 2011 à 8h 30mn

program P24mai8h30mn;

uses wincrt;

var n,p:Integer;

Res:Longint;

{*******************************************}

procedure Saisie_n(var n:integer);

begin

Repeat

Write('n= ');

Readln(n);

Until n in [10..99]

end;

procedure Saisie_p(var p:integer);

begin

Repeat

Write('p= ') ;

Readln(p);

Until (p>=100) and (p<=999);

end;

{*******************************************}

Function Traitement(n,p:integer):Longint;

var

nch,pch:String;

e:Integer;

tmp:LongInt;

begin

STR(n,nch);

STR(p,pch);

INSERT(pch,nch,2);

{Ou encore...

nch:=nch[1] + pch + nch[2]}

VAL(nch,tmp,e);

Traitement:=tmp;

end;

{*******************************************}

begin

Saisie_n(n);

Saisie_p(p);

Res:=Traitement(n,p);

writeln('Résultat= ',Res)

end.

Page 3: éNoncés+corrections bac2011

Année Scolaire : 2011-2012 4 SC

Lycée Attarine Ariana 2012

REPUBLIQUE TUNISIENNE

MINISTERE DE L’EDUCATION

EXAMEN DU BACCALAUREAT - SESSION DE JUIN 2011

SECTIONS: Mathématiques + Sciences Expérimentales + Sciences Techniques

EPREUVE PRATIQUE D’INFORMATIQUES Durée : 1h Coefficient : 0.5

DATE : 24 mai 2011 à 10h

Sujet

Un nombre heureux est un entier strictement positif, qui, lorsqu'on additionne les carrés de

chacun de ses chiffres, puis on additionne les carrés des chiffres de la somme obtenue et ainsi de

suite, on obtient un entier à un seul chiffre et est égal à 1.

Exemple 1 : pour l'entier 7 on a: 72 = 49

42 + 92 = 97

92 + 72 = 130

12 + 32 + 02 =10

12 + 02 = 1

On a obtenu un entier à un seul chiffre qui est égal à 1 ; donc 1 'entier 7 est heureux

Exemple 2 : pour 1' entier 85 on a : 82 +52 = 89

82 + 92 = 145

12 + 42 +52 = 42

42 + 22 = 20

22 + 02 = 4

On a obtenu un entier à un seul chiffre mais qui est différent de 1 ; donc l'entier 85 n'est

pas heureux

Travail demandé :

Ecrire un programme Pascal qui permet de saisir un entier n strictement positif puis de

vérifier et d'afficher s'il est heureux ou non.

Grille d’évaluation

Questions Nombre de points

Décomposition en modules utiles à la solution proposée (déclarations et appels) 4(2+2)

Si exécution et test réussis

Sinon

Compilation

Structures de données adéquates au problème

Saisie et contrôle des données

Traitement avec les structures de contrôles adéquates

extraction des chiffres

calcul des sommes des carrés

boucles

Affichage du résultat

16

3

2

2

3

3

1

2

Page 4: éNoncés+corrections bac2011

Année Scolaire : 2011-2012 4 SC

Lycée Attarine Ariana 2012

REPUBLIQUE TUNISIENNE

MINISTERE DE L’EDUCATION

EXAMEN DU BACCALAUREAT - SESSION DE JUIN 2011

SECTIONS: Mathématiques + Sciences Expérimentales + Sciences Techniques

EPREUVE PRATIQUE D’INFORMATIQUES Durée : 1h Coefficient : 0.5

DATE : 24 mai 2011 à 10h

uses Wincrt;

var N:Integer;{*************************************}

Procedure Saisie(Var N:Integer);

Begin

Repeat

Write('N= ');

Readln(N);

Until N>0;

end;{*************************************}

Function Somme_Carre_Chiffres(N:Integer):Integer;

Var Ch:string;

i,d,e,somme:integer;

begin

STR(N,ch);

somme:=0;

for i:=1 to Length(ch) do

begin

VAL(ch[i],d,e);

somme:=somme+SQR(d);

end;

Somme_Carre_Chiffres:=somme;

end;

{ou encore...

Function Somme_Carre_Chiffres(N:Integer):Integer;

Var S,U:Integer;

Begin

S:=0;

Repeat

U:=N MOD 10;

S:=S+ SQR(U);

N:=N DIV 10;

Until N = 0;

Somme_Carre_Chiffres:=S;

End;}

Procedure Verifier_Heureux(N:Integer);

Begin

Repeat

N:=Somme_Carre_Chiffres(N);

Until N<10;

IF N = 1 THEN

Write('L''entier est heureux')

ELSE Write('L''entier n''est pas heureux')

End;

{************** PP *******************}

Begin

Saisie(N);

Verifier_Heureux(N);

End.

Page 5: éNoncés+corrections bac2011

Année Scolaire : 2011-2012 4 SC

Lycée Attarine Ariana 2012

REPUBLIQUE TUNISIENNE

MINISTERE DE L’EDUCATION

EXAMEN DU BACCALAUREAT - SESSION DE JUIN 2011

SECTIONS: Mathématiques + Sciences Expérimentales + Sciences Techniques

EPREUVE PRATIQUE D’INFORMATIQUES Durée : 1h Coefficient : 0.5

DATE : 24 mai 2011 à 14h

Sujet

Un entier est dit distinct s'il est composé de chiffres distincts (différents).

Ecrire un programme Pascal qui permet de saisir un entier n (n > 0), puis de vérifier et

d'afficher si cet entier est distinct ou non.

Exemple 1:

n = 1273 est dit distinct car il est formé par les chiffres 1, 2, 7 et 3 qui sont tous

distincts, donc, le programme affichera : Cet entier est distinct

Exemple 2:

n = 1565 est dit non distinct car il est formé par les chiffres 1, 5, 6 et 5 qui ne sont pas

tous distincts (le chiffre 5 se répète deux fois), donc, le programme affichera: Cet entier est

non distinct.

Grille d’évaluation

Questions Nombre de points

Décomposition en modules utiles à la solution proposée (déclarations et appels) 4(2+2)

Si exécution et test réussis

Sinon

Compilation

Structures de données adéquates au problème

Saisie et contrôle des données

Traitement avec les structures de contrôles adéquates

extraction des chiffres

calcul des sommes des carrés

boucles

Affichage du résultat

16

3

2

2

3

3

1

2

Page 6: éNoncés+corrections bac2011

Année Scolaire : 2011-2012 4 SC

Lycée Attarine Ariana 2012

REPUBLIQUE TUNISIENNE

MINISTERE DE L’EDUCATION

EXAMEN DU BACCALAUREAT - SESSION DE JUIN 2011

SECTIONS: Mathématiques + Sciences Expérimentales + Sciences Techniques

EPREUVE PRATIQUE D’INFORMATIQUES Durée : 1h Coefficient : 0.5

DATE : 24 mai 2011 à 14h

Program P24_Mai_14h;

Uses Wincrt;

Var N:Longint;

{*****************************************************}

Procedure Saisie(Var N:Longint);

Begin

Repeat

write('N= ');

readln(N);

until (N>0);

End;

{*****************************************************}

Function Verifier(N:longint):boolean;

Var

Ch:string;

i:integer;

b:boolean;

Begin

Str(n,ch);

b:=True;

For i:=1 to length(ch) do

Begin

{Si on trouve un chiffre dans un autre emplacement

on modifie la variable b<--False }

If (pos(ch[i],ch)<>i) then b:=False;

End;

Verifier:=b;

End;

{*****************************************************}

Begin

Saisie(N);

If (Verifier(N)) then

writeln(N,' est distinct.')

else writeln(N,' est non distinct.');

End.

Page 7: éNoncés+corrections bac2011

Année Scolaire : 2011-2012 4 SC

Lycée Attarine Ariana 2012

REPUBLIQUE TUNISIENNE

MINISTERE DE L’EDUCATION

EXAMEN DU BACCALAUREAT - SESSION DE JUIN 2011

SECTIONS: Mathématiques + Sciences Expérimentales + Sciences Techniques

EPREUVE PRATIQUE D’INFORMATIQUES Durée : 1h Coefficient : 0.5

DATE : 24 mai 2011 à 14h

Program P24_Mai_14h_Version_2;

Uses wincrt ;

Var n :longint ;

{*****************************************************}

Procedure Saisie(Var N:Longint);

Begin

Repeat

Write('N= ');

Readln(N);

until (N>0);

End;

{* Fonction qui recherche la fréquence d'un caractère C

dans une chaîne Ch *******}

Function Frequence(Ch :String; C:Char):Integer ;

Var

i:Integer ;

F:integer;

begin

F:=0;

For i:=1 to Length(Ch) do

IF Ch[i]= C THEN F:=F+1;

Frequence:=F;

end;

{******************************************************}

Procedure Traitement(N:Longint);

Var

i:Integer;

Ch:String ;

b:Boolean ;

Begin

STR(N,Ch);

b:=True ;

i:=0;

repeat

i:=i+1;

if Frequence(Ch,Ch[i])<>1 then b:=False;

Until (b=False) OR (i=Length(Ch));

IF b=True THEN

Write (N, ' est distinct')

ELSE Write(N, ' n''est pas distinct' ) ;

End;

{******************************************************}

begin

Saisie (N) ;

Traitement (N) ;

end.

Page 8: éNoncés+corrections bac2011

Année Scolaire : 2011-2012 4 SC

Lycée Attarine Ariana 2012

REPUBLIQUE TUNISIENNE

MINISTERE DE L’EDUCATION

EXAMEN DU BACCALAUREAT - SESSION DE JUIN 2011

SECTIONS: Mathématiques + Sciences Expérimentales + Sciences Techniques

EPREUVE PRATIQUE D’INFORMATIQUES Durée : 1h Coefficient : 0.5

DATE : 24 mai 2011 à 15h30mn

Sujet

Soit la suite U définie par :

U1 = 1

U2 = 3

Un = 2*Un-1 + 3*Un-2 pour tout n 3

Ecrire un programme Pascal qui permet de calculer et d’afficher les n premiers termes

de la suite U avec 3 ≤ n ≤ 20.

Grille d’évaluation

Questions Nombre de points

Décomposition en modules utiles à la solution proposée (déclarations et appels) 4(2+2)

Si exécution et test réussis

Sinon

Compilation

Structures de données adéquates au problème

Saisie et contrôle des données

Traitement avec les structures de contrôles adéquates

initialisation

calcul de Un

boucles

Affichage du résultat

16

3

2

3

1

3

1

3

Page 9: éNoncés+corrections bac2011

Année Scolaire : 2011-2012 4 SC

Lycée Attarine Ariana 2012

REPUBLIQUE TUNISIENNE

MINISTERE DE L’EDUCATION

EXAMEN DU BACCALAUREAT - SESSION DE JUIN 2011

SECTIONS: Mathématiques + Sciences Expérimentales + Sciences Techniques

EPREUVE PRATIQUE D’INFORMATIQUES Durée : 1h Coefficient : 0.5

DATE : 24 mai 2011 à 15h30mn

Program P24_Mai_14h_Version_2;

Uses Wincrt ;

Type

Tab=Array[1..20] Of LongInt;

Var

U:Tab;

N :Integer ;

{*****************************************************}

Procedure Saisie(Var N:Integer);

Begin

Repeat

Write('N= ');

Readln(N);

until (N>0);

End;

{*Remplissage du tableau "U" par les N termes de la suite*}

Procedure Suite(Var U:Tab; N:Integer);

Var

i:Integer ;

begin

U[1]:=1;

U[2]:=3;

For i:=3 to N do {On commence par i=3}

U[i]:=2*U[i-1] + 3*U[i-2];

end;

{********** Affichage Des N Termes *******************}

Procedure Affichage(U:Tab; N:Integer);

Var

i:Integer;

Begin

For i:=1 to N do

Writeln(U[i]);

End;

{******************************************************}

begin

Saisie (N) ;

Suite(U,N);

Affichage(U,N);

end.

Page 10: éNoncés+corrections bac2011

Année Scolaire : 2011-2012 4 SC

Lycée Attarine Ariana 2012

REPUBLIQUE TUNISIENNE

MINISTERE DE L’EDUCATION

EXAMEN DU BACCALAUREAT - SESSION DE JUIN 2012

SECTIONS: Mathématiques + Sciences Expérimentales + Sciences Techniques

EPREUVE PRATIQUE D’INFORMATIQUES Durée : 1h Coefficient : 0.5

DATE : 28 mai 2012 à 8h30mn

Sujet

Un nombre polydivisible est un entier naturel s'écrivant avec les chiffres a b c d e ..., qui

possède les propriétés suivantes :

Le nombre formé par ses deux premiers chiffres "a b", est un multiple de 2.

Le nombre formé par ses trois premiers chiffres "a b c", est un multiple de 3.

Le nombre formé par ses quatre premiers chiffres "a b c d", est un multiple de 4.

etc.

Exemple1 :

345654 est un nombre polydivisble, en effet:

34 est divisible par 2

345 est divisible par 3

3456 est divisible par 4

34565 est divisible par 5

345654 est divisible par 6

Exemple1 :

123456 n'est pas polydivisible, parce que 1234 n'est pas un multiple de 4.

Travail demandé :

Ecrire un programme Pascal qui permet saisir un entier N (N>100) puis de vérifier et

d’afficher s’il est polydivisible ou non

Grille d’évaluation

Questions Nombre de points

Décomposition en modules utiles à la solution proposée (déclarations et appels) 4(2+2)

Si exécution et test réussis

Sinon

Compilation

Structures de données adéquates au problème

Saisie et contrôle des données

Traitement avec les structures de contrôles adéquates

Affichage du résultat

16

3

2

2

5

2

Page 11: éNoncés+corrections bac2011

Année Scolaire : 2011-2012 4 SC

Lycée Attarine Ariana 2012

REPUBLIQUE TUNISIENNE

MINISTERE DE L’EDUCATION

EXAMEN DU BACCALAUREAT - SESSION DE JUIN 2011

SECTIONS: Mathématiques + Sciences Expérimentales + Sciences Techniques

EPREUVE PRATIQUE D’INFORMATIQUES Durée : 1h Coefficient : 0.5

DATE : 24 mai 2011 à 15h30mn

Program Proposition_25_Mai_8h_30mn;

Uses Wincrt ;

Var

N :LongInt ;

{*****************************************************}

Procedure Saisie(Var N:LongInt);

Begin

Repeat

Write('N= ');

Readln(N);

until (N>100);

End;

{*****************************************************}

Function Polydivisible(N:LongInt):Boolean;

Var

CH,Tmp:String;

X:LongInt;

e,i:Integer;

B:Boolean;

Begin

STR(N,CH);

Tmp:=CH[1];

i:=1;

B:=True;

Repeat

i:=i+1;

Tmp:=Tmp+CH[i];

Val(Tmp,X,e);

IF (X MOD i) <>0 THEN B:=False;

Until (i=Length(CH)) OR (B=False);

Polydivisible:=B;

End;

{*****************************************************}

Begin

Saisie(N);

IF Polydivisible(N)=True THEN

Write(N,' est polydivisible')

ELSE Write(N,' n''est pas polydivisible');

End.