Drop Down MenusCSS Drop Down MenuPure CSS Dropdown Menu

Bac 2017

Bac 2018

Bac 2019

Bac 2014

Bac 2015

Bac 2016

Bac 2011

Bac 2012

Bac 2013

Bac 2008

Bac 2009

Bac 2010

Bac 2020

Bac 2017

Bac 2018

Bac 2019

Bac 2014

Bac 2015

Bac 2016

Bac 2011

Bac 2012

Bac 2013

Bac 2008

Bac 2009

Bac 2010

mercredi 15 juillet 2020

Baccalauréat 2020 Sujet 1 SI Corrigé

Program BacPratique_2020; Uses wincrt; Var NB : integer; FN,F7,F13 : Text; (*************************************************) //Saisie de NB >=5; Procedure Saisie(Var NB:integer); Begin Repeat write('Taille du fichier (>=5) : '); Readln(NB); Until (NB >= 5); End; (*************************************************) Procedure Creation(Var F1,F2,F3:Text); Begin Assign(F1,'C:\BAC2020\123456\Nombre.txt'); Assign(F2,'C:\BAC2020\123456\DIV13.txt'); Assign(F3,'C:\BAC2020\123456\DIV7.txt'); End; (*************************************************) //Verifier si la chaine saisie est numérique Function Verif(ch:String) : Boolean; Var i : integer; Begin i := 1; While (i<=Length(ch)) And (ch[i] In ['0'..'9']) Do i := i+1; Verif := (i>Length(ch)); End; (*************************************************) //Verif Récursive Function Verifier(ch:String) : Boolean; Begin If (ch='') Then Verifier := True Else If (Not(ch[1] In ['0'..'9'])) Then Verifier := False Else Verifier := Verifier(Copy(ch,2,Length(ch)-1)); End; (*************************************************) Procedure Remplir_Nombre(Var F:Text; N : integer); Var i : integer; ch : String; Begin Rewrite(F); For i:=1 To N Do Begin Repeat write(i,' : Donner un Nombre: '); Readln(ch); Until (ch<>'') And (Verifier(ch)); WRITELN(F,ch); End; Close(F); End; (*************************************************) Function DIV13(N:String) : Boolean; Var S,Sg,V,e : integer; Begin S := 0; Sg := -1; While (Length(N)>=3) Do Begin VAL(Copy(N,Length(N)-2,3),V,e); S := S+V*Sg; Sg := -Sg; Delete(N,Length(N)-2,3); End; VAL(N,V,e); S := S+V*Sg; DIV13 := (ABS(S) Mod 13 = 0); End; (*************************************************) Function DIV7(ch:String) : Boolean; Var S,P1,P2,P3,U,D,C,e : integer; ch1 : String; Begin Repeat //Ajustement pour que la taille devient un multiple de 3 While (Length(ch) Mod 3 <> 0) Do ch := '0'+ch; P1 := 1; P2 := 3; P3 := 2; //P : Période S := 0; Repeat ch1 := Copy(ch,Length(ch)-2,3); Delete(ch,Length(ch)-2,3); VAL(ch1[3],U,e); //U : Unité VAL(ch1[2],D,e); //D: Dizaine VAL(ch1[1],C,e); //C: Centaine S := S+P1*U+P2*D+P3*C; P1 := -P1; P2 := -P2; P3 := -P3; //1 devient -1 ,3 devient -3 et 2 devient -2 Until (ch=''); //writeln('S = ',S); STR(S,ch); Until (Length(ch)=1); //La somme est formée d'un seul chiffre (Condition d'arrêt) DIV7 := (S In [0,7]); End; (*************************************************) Procedure Eclater(Var FN,F13,F7 : Text); Var ch : String; Begin Reset(FN); Rewrite(F13); Rewrite(F7); While (Not(EOF(FN))) Do Begin READLN(FN,ch); If (DIV13(ch)) Then WRITELN(F13,ch); If (DIV7(ch)) Then WRITELN(F7,ch); End; Close(FN); Close(F13) ; Close(F7); End; (*************************************************) Begin Creation(FN,F13,F7); Saisie(NB); Remplir_Nombre(FN,NB); Eclater(FN,F13,F7); End.
Baccalauréat 2020 Sujet 1 SI Corrigé Lire la suite...

Baccalauréat Informatique Pratique SI 2020

RÉPUBLIQUE TUNISIENNE
MINISTÈRE DE L’ÉDUCATION
 
¯¯¯¯¯
EXAMEN DU BACCALAURÉAT
SESSION 2020

Épreuve pratique d’informatique

Sections :
 
Sciences de l’informatique

Coefficient de l’épreuve : 0.75

Durée : 1h 30mn

 

Important 

1) Dans le dossier Bac2020 situé sur la racine du disque C: de votre poste, créez un dossier de travail ayant pour nom votre numéro d’inscription (6 chiffres) et dans lequel vous devez enregistrer au fur et à mesure tous les fichiers solution au problème posé.

2) Vérifiez à la fin de l’épreuve que tous les fichiers que vous avez créés sont dans votre dossier de travail.

3) Une solution modulaire au problème posé est exigée.

Soit "Nombre.txtun fichier texte contenant des entiers naturels à raison d’un entier par ligne. On se propose de créer deux fichiers textes "Div13.txtet "Div7.txtcontenant respectivement les valeurs, de "Nombre.txt", qui sont divisibles par 13 et par à raison d’un entier par ligne en se basant sur les deux principes décrits ci après :

A- Divisibilité par 13

L’algorithme du module Divis13 ci-après permet de vérifier si un nombre est divisible par 13.

0) DEF Fn Divis13 (N : chaine) : booléen

1) S ¬ 0 

    Sg ¬ -1

   Tant que long (N) >= 3 faire

Valeur (Sous_chaine (N , long(N) - 2,3) , v , e)

¬ S + v * Sg 

Sg ¬ -Sg

Efface (N , long(N) - 2,3)

    Fin Tantque

2) Valeur (N , v , e)

     S ¬ S + v * Sg

3) Divis13 ¬  abs(S) mod 13 = 0

4) Fin Divis13 

Exemple :

Pour vérifier si le nombre 1612311857 est divisible par 13, on applique la règle de divisibilité par 13 décrite par l’algorithme précédent :

- On regroupe les chiffres du nombre par des blocs de trois chiffres en commençant à partir des unités :

612 311 857

- On ajoute alternativement des "-" et des "+" entre les blocs en commençant par placer un "-" pour le premier bloc à droite : 

1 - 612 + 311 - 857

- On effectue l’opération ainsi obtenue : 

1 - 612 + 311 - 857 = -1157

- La valeur absolue du résultat obtenu (1157) est divisible par 13 donc 1612311857 est divisible par 13. 

B- Divisibilité par 7

Pour vérifier si un nombre est divisible par nous proposons la règle de divisibilité suivante :

- Calculer la somme itérée et pondérée des chiffres de par la série périodique de période 132-1-3-2, c’est à-dire additionner tous les chiffres de en multipliant chacun par un chiffre de la période en commençant par le chiffre des unités qui sera multiplié par 1, le chiffre des dizaines sera multiplié par 3, ...  Si la somme est un nombre formé de plus d’un chiffre, on recommence le processus.

Exemple : Pour N = 45286090 la somme itérée et pondérée est égale à 3. En effet :

0 x 9 x 3 + 0 x + 6 x (-1) + 8 x (-3) + 2 x (-2) + 5 x + 4 x = 10

Comme 10 est composé de plus d’un chiffre alors on recommence le processus avec 10, d’où : 0 x + 1 x = 3

- Un nombre est divisible par si la somme itérée et pondérée de ses chiffres par la série périodique de période 132-1-3-2 vaut ou 7.

Exemples :

· 6090 est divisible par 7, en effet : 0 x 1 9 x 3 0 x 2 6 x (-1) = 21. Comme 21 est composé de plus d’un chiffre alors on recommence le processus d’où 1 x 1 2 x 3 7

·  717255 est divisible par 7, en effet : 5 x 1 5 x 3 + 2 x 2 + 7 x (-1) + 1 x (-3) + 7 x (-2) = 0

·  45286090 n’est pas divisible par 7, en effet :

0 x 1 9 x + 0 x 2 + 6 x (-1) + 8 x (-3) + 2 x (-2) + 5 x 4 x 3 = 10

Comme 10 est composé de plus d’un chiffre alors on recommence le processus d’où 0 x 1 1 x 3 

Comme 3 est différent de 0 et de 7 donc 45286090 n’est pas divisible par 7

Travail demandé :

Ecrire un programme Pascal qui permet de :

- Saisir Nb entiers naturels (Nb> 5) à enregistrer dans le fichier "Nombre.txt"

- Placer les nombres du fichier "Nombre.txt" qui sont divisibles par 13 dans un fichier nommé "Div13.txten utilisant le module Divis13 et les nombres divisibles par dans un fichier nommé "Div7.txten appliquant la règle de divisibilité par expliquée ci-dessus.

 

Grille d’évaluation

Traitement

Nombre de points

• Décomposition en modules

2

• Appel des modules

2

• Si exécution et tests réussis avec respect des contraintes

16

Sinon

 

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

3

- Saisie de Nb avec respect des contraintes et remplissage du fichier "Nombre.txt"

1.75

- Traduction de la fonction Divis13

3

- Vérification de la divisibilité par 7

4

- Création et remplissage des fichiers "Div13.txt" et "Div7.txt"

4.25

 

 

 


 

 

Baccalauréat Informatique Pratique SI 2020 Lire la suite...

samedi 23 mai 2020

MyPascal

MyPascal est un environnement de développement intégré (IDE) et compilateur pascal, basé sur le compilateur Free Pascal, permettant de programmer en Pascal. Il est conçu principalement pour les élèves et les étudiants qui commencent à apprendre la programmation.

MyPascal est avec une interface qui emprunte le style de office 2013. Il permet la coloration syntaxique, la compilation, l'exécution, l'exportation au format HTML, RTF et PDF des codes sources, la compression des fichiers sources au format ZIP (avec ou sans mot de passe).

MyPascal Copyright (c) 2015-2020 Ghaith Ammar







MyPascal Lire la suite...

 
Back to top