Eg 2024

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 15

EXAMEN DU BACCALAURÉAT SESSION

RÉPUBLIQUE TUNISIENNE
ÉPREUVE
Section : Économie et Gestion
Ministère de l'Éducation
: 0.5 Durée : 1h

Le sujet comporte 3 pages numérotées de 1/3 à 3/3

Important : Il est demandé au candidat de créer dans le dossier Bac2024 situé sur la racine du disque C, un
dossier de travail portant son il doit enregistrer, au fur et à
mesure, tous les fichiers solutions de ce sujet.

Poste_Frontalier" décrite par le schéma textuel


suivant :
POSTE (CodeP, Nom, Gouvernorat, Frontière, Catégorie, Superficie)
VOYAGEUR (IdVoy, NomPrénom, Passeport, Nationalité, Genre)
PASSAGE (NumPass, CodeP#, IdVoy#, Date, Accès)
Sachant que :
POSTE est une table contenant les informations à propos des postes frontaliers terrestres tunisiens.
VOYAGEUR est une table contenant les informations relatives aux voyageurs.
PASSAGE est une table contenant les informations relatives aux flux des passagers au niveau des
postes frontaliers terrestres tunisiens.
Soit la description des colonnes des tables de cette base de données :

Nom Description Type Taille Format Contrainte


CodeP Code d un poste frontalier Texte 3
Nom Nom d un poste frontalier Texte 50 Null interdit
Gouvernorat Gouvernorat d un poste frontalier Texte 50
"TA" pour "Tuniso-Algérienne" ou
Frontière Texte 2 "TA" par défaut
"TL" pour "Tuniso-Libyenne"
"C" pour "Commercial" ou
Catégorie Texte 1 "C" par défaut
"T" pour "Touristique"
Superficie Superficie d un poste frontalier en m2 Numérique Entier >0
IdVoy Texte 8
NomPrénom Nom et prénom d un voyageur Texte 50 Null interdit
Passeport un voyageur Texte 10 Null interdit
Nationalité Nationalité d un voyageur Texte 20
Genre Genre d un voyageur ("M" ou "F") Texte 1
NumPass Numéro de passage NuméroAuto
Date Date de passage Date/Heure Date, abrégé
Accès "E" pour "Entrée" ou "S" pour "Sortie" Texte 1

1) Créer, dans le dossier de travail, la base de données nommée "Poste_Frontalier".


2) Créer les tables et les relations de cette base de données tout en respectant les types, les propriétés et les
contraintes cités dans la description ci-dessus.
- Page 1/3 -
3) Remplir les tables par les données représentées dans les tableaux suivants :
POSTE
CodeP Nom Gouvernorat Frontière Catégorie Superficie
P01 Ras Jedir Médenine TL C 308754
P02 Dhehiba Tataouine TL C 200000
P03 Melloula Jendouba TA T 45340
VOYAGEUR
IdVoy NomPrénom Passeport Nationalité Genre
V0000001 Briki Ridha W111111 Tunisienne M
V0000002 Hamrouni Maram 224466777 Algérienne F
V0000003 Zouari Mongi Z445544 Tunisienne M
V0000004 Nheri Sarra 110006666 Algérienne F
PASSAGE
NumPass CodeP IdVoy Date Accès
1 P01 V0000001 22/11/2023 S
2 P01 V0000002 08/01/2024 S
3 P01 V0000001 27/01/2024 E
4 P03 V0000003 10/02/2024 S
4) Créer les requêtes suivantes :
R1 : Afficher la liste des postes frontaliers commerciaux (CodeP, Nom, Gouvernorat).
R2 : Afficher la liste des voyageurs (NomPrénom, Nationalité, Genre) qui ont quitté le territoire
tunisien avant le mois de février 2024 par le poste frontalier de code "P01".
R3 : Afficher, pour chaque poste, son nom ainsi que le nombre de voyageurs sortants.
5) Exporter, dans le dossier de travail et sous le nom "poste.csv", le contenu de la table "POSTE" au
format csv (Point-virgule en séparateur de champs, point en séparateur décimal, page de codes :
Unicode (UTF-8) et inclure les noms des champs sur la première ligne).

loitant la bibliothèque Pandas :


1) "Poste" dans le dossier de travail.
2) Choisir les méthodes et les propriétés adéquates, à partir de de la page 3/3, pour écrire dans le
fichier "Poste" les scripts permettant de ( ) :
a) importer le contenu du fichier "poste.csv" et le stocker dans un DataFrame à nommer "dfpos",
b) afficher le contenu du DataFrame "dfpos",
c) ajouter à la fin du DataFrame "dfpos" la ligne suivante :
CodeP Nom Gouvernorat Frontière Catégorie Superficie
P04 Hazoua Tozeur TA C 90376
d) modifier la superficie du poste frontalier "Dhehiba" par 230323,
e) trier le DataFrame "dfpos" dans un nouveau DataFrame à nommer "dfpos_tri"
croissant des superficies et afficher les informations relatives au poste ayant la superficie la plus
grande,
f) créer et afficher un graphique en barres bleues à partir du DataFrame "dfpos", représentant pour
chaque nom de poste frontalier, sa superficie et ayant comme titre "Superficies des postes
frontaliers".

Partie A (13 points) B (7 points)


Grille
Question 1 2 3 4 5 1 2.a. 2.b. 2.c. 2.d. 2.e. 2.f.
Note 0.5 4.5 3 4 1 0.5 1.25 0.25 1 1 1.25 1.75

- Page 2/3 -
ANNEXE
Les méthodes et les propriétés à utiliser avec la bibliothèque pandas
Catégorie Syntaxe
IdDataFrame = pandas.DataFrame ({"NomCol Nom
Importation des données dans un IdDataFrame = pandas.read_excel ("Chemin/ Nom_Fichier.extension", "Nom_Feuille")
DataFrame IdDataFrame = pandas.read_csv ("Chemin/Nom_Fichier.extension", sep = "séparateur")
IdDataFrame.shape ou bien print (IdDataFrame.shape)
IdDataFrame.size ou bien print (IdDataFrame.size)
IdDataFrame.info ( ) ou bien print ( IdDataFrame.info ( ) )
IdDataFrame.describe ( ) ou bien print ( IdDataFrame.describe ( ) )
IdDataFrame.columns ou bien print ( IdDataFrame.columns )

Resultat
Resultat = IdDataFrame.drop ( IdDataFrame.index [ N° LigneInitial : N° LigneFinal ] )

IdDataFrame ou bien print ( IdDataFrame )


IdDataFrame [ "NomColonne" ] ou bien print ( IdDataFrame [ "NomColonne" ] )
Id_DataFrame [ ["NomColonne1"," ien print ( Id_DataFrame [ ["NomColonne1","
IdDataFrame ["NomColonne"] [ N° LigneInitial : N° LigneFinal ] ou bien print ( IdDataFrame ["NomColonne"] [ N° LigneInitial : N° LigneFinal ])
IdDataFrame.iloc [ N° Ligne ] ou bien print ( IdDataFrame.iloc [ N° Ligne ] )
IdDataFrame.head ( n ) ou bien print ( IdDataFrame.head ( n ) )
IdDataFrame.tail ( n ) ou bien print ( IdDataFrame.tail ( n ) )
IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] ou bien print ( IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] )
IdDataFrame.iloc [ N° Ligne , N° Colonne ] ou bien print ( IdDataFrame.iloc [ N° Ligne , N° Colonne ] )
IdDataFrame.loc [ N° ligne , "NomColonne" ] = Valeur (ou Formule)
Modification et ajout des données dans
Id_DataFrame.loc [ N° ligne ] = [ Liste_Valeur ]
un DataFrame
Id_DataFrame [ "NomColonne" ] = Valeur (ou Formule)
Resultat = Id_DataFrame.drop_duplicates ( )
Resultat = Id_DataFrame.dropna ( )
Resultat = Id_DtaFrame.dropna ( axis = 1 )
Les fonctions statistiques mean ( ) min ( ) max ( ) sum ( ) count ( )
Affichage des IdDataFrame [ IdDataFrame [ "NomColonne" ] OperateurComparaison Valeur ]
selon une ou plusieurs conditions IdDataFrame [( IdDataFrame ["NomColonne"] OperateurComp Valeur) OperateurLogique ( IdDataFrame ["NomColonne"] OperateurComp Valeur )]

IdDataFrame.plot.bar (x = "NomColonneAbscisse", y = "NomColonneOrdonnée", title = "TitreGraphique", color = "CouleurGraphique")


IdDataFrame.plot.line (x = "NomColonneAbscisse", y = "NomColonneOrdonnée", title = "TitreGraphique", color = "CouleurGraphique")
alias_matplotlib.show ( )

- Page 3/3 -
EXAMEN DU BACCALAURÉAT SESSION
RÉPUBLIQUE TUNISIENNE
ÉPREUVE
Section : Économie et Gestion
Ministère de l'Éducation
: 0.5 Durée : 1h

Le sujet comporte 3 pages numérotées de 1/3 à 3/3


Important : Il est demandé au candidat de créer dans le dossier Bac2024 situé sur la racine du disque C, un
dossier de travail portant son il doit enregistrer, au fur et à
mesure, tous les fichiers solutions de ce sujet.

Afin de gérer les vols


simplifiée intitulée "Gestion_Vols" décrite par le schéma textuel suivant :
AVION (CodeAv, ModèleAv, CapacitéAv)
PILOTE (MatPil, NomPrénomPil, AdressePil, TelPil)
VOL (NumVol, CodeAv#, MatPil#, DateVol, VilleDép, VilleArr, NbrePass, VolRéalisé)
Sachant que :
AVION est une table contenant les informations relatives aux avions.
PILOTE est une table contenant les informations relatives aux pilotes.
VOL est une table contenant les informations relatives aux vols.
Soit la description des colonnes des tables de cette base de données :

Nom Description Type Taille Format Contrainte


CodeAv Code avion Texte 4
ModèleAv Modèle avion Texte 50 Null interdit
Nombre maximum de passagers
CapacitéAv Numérique Entier 50
avion

MatPil Matricule pilote Texte 8


NomPrénomPil Nom et prénom pilote Texte 50 Null interdit
AdressePil Adresse pilote Texte 150 Null interdit
TelPil Numéro de téléphone d un pilote Texte 8 Null interdit

NumVol Numéro d vol NuméroAuto


DateVol Date d vol Date/Heure Date, général Null interdit
VilleDép Ville de départ Texte 50 Null interdit
VilleArr e Texte 50 Null interdit
NbrePass Nombre de passagers dans un vol Entier >40
VolRéalisé Vol réalisé ("Oui" ou "Non") Oui/Non "Non" par défaut

A)
1) Créer, dans le dossier de travail, la base de données nommée "Gestion_Vols".
2) Créer les tables et les relations de cette base de données tout en respectant les types, les propriétés et les
contraintes cités dans la description ci-dessus.
- Page 1/3 -
3) Remplir les tables par les données représentées dans les tableaux suivants :
AVION PILOTE
CodeAv ModèleAv CapacitéAv MatPil NomPrénomPil AdressePil TelPil
A001 AirBus A310 80 11111111 Ali Haddad Gabes 99444444
A002 AirBus A330 70 22222222 Moez Salhi Sousse 98333333
A003 AirBus A330 65 33333333 Salma Mejri Nabeul 55666666
A004 Boeing 747 90
.
VOL
NumVol CodeAv MatPil DateVol VilleDép VilleArr NbrePass VolRéalisé
1 A001 11111111 29/04/2024 Tunis Alger 68 Oui
2 A003 22222222 29/04/2024 Jedda Tozeur 50 Non
3 A001 33333333 30/04/2024 Nfidha Tunis 55 Oui
4 A003 11111111 02/05/2024 Tunis Caire 60 Non
5 A002 22222222 03/05/2024 Tozeur Nice 55 Non

4) Créer les requêtes suivantes :


R1 : Afficher les avions (CodeAv, ModèleAv, NbrPass) qui ont réalisé des vols à une date
donnée,
R2 : Ajouter six voyageurs au nombre de passagers du vol numéro 3,
R3 : Afficher les vols (CodeAv, ModèleAv, MatPil, DateVol, NbrePass, CapacitéAv,
VolRéalisé) programmés pendant le mois d avril 2024.

5) Exporter, dans le dossier de travail, le résultat de la requête "R3" dans un classeur à nommer
"vols.xlsx".

B) :
1) Vols" dans le dossier de travail.
2) Choisir les méthodes et les propriétés adéquates, à partir de de la page 3/3, pour écrire dans le
fichier "Vols" les scripts permettant de ( ) :
a) importer le contenu du classeur "vols.xlsx" et le stocker dans un DataFrame à nommer "dfvol1",
b) afficher les informations relatives au DataFrame "dfvol1",
c) créer, à partir du DataFrame "dfvol1", un DataFrame nommé "dfvol2" contenant les colonnes
"CodeAv", "ModèleAv", "DateVol", "NbrePass" et "CapacitéAv" des vols réalisés uniquement,
d) renommer les colonnes "CodeAv" et "DateVol" du DataFrame "dfvol2" respectivement par "Code
Avion" et "Date Vol",
e) trier le DataFrame "dfvol2" oissant du nombre de passagers puis afficher son contenu.
f) créer et afficher un graphique, en barres vertes à partir du DataFrame "dfvol2", représentant le
nombre de passagers ("NbrePass") pour chaque vol ("Code Avion"). Attribuer au graphique le titre
"Nombre de passagers par vol pour le mois d 2024".

Partie A (13 points) B (7 points)


Grille
Question 1 2 3 4 5 1 2.a. 2.b. 2.c. 2.d. 2.e. 2.f.
Note 0.5 4.5 3 4 1 0.5 1 0.5 1 0.75 1.5 1.75

- Page 2/3 -
ANNEXE
Les méthodes et les propriétés à utiliser avec la bibliothèque pandas
Catégorie Syntaxe
IdDataFrame = pandas.DataFrame ({"NomCol Nom
Importation des données dans un IdDataFrame = pandas.read_excel ("Chemin/ Nom_Fichier.extension", "Nom_Feuille")
DataFrame IdDataFrame = pandas.read_csv ("Chemin/Nom_Fichier.extension", sep = "séparateur")
IdDataFrame.shape ou bien print (IdDataFrame.shape)
IdDataFrame.size ou bien print (IdDataFrame.size)
IdDataFrame.info ( ) ou bien print ( IdDataFrame.info ( ) )
IdDataFrame.describe ( ) ou bien print ( IdDataFrame.describe ( ) )
IdDataFrame.columns ou bien print ( IdDataFrame.columns )
Resultat = IdDataFrame.rename (columns = {"NomColonne1": "NouveauNomCo

Resultat = IdDataFrame.drop ( IdDataFrame.index [ N° LigneInitial : N° LigneFinal ] )


"NomColonneN" ] )
IdDataFrame ou bien print ( IdDataFrame )
IdDataFrame [ "NomColonne" ] ou bien print ( IdDataFrame [ "NomColonne" ] )
Id_DataFrame [ ["NomColonne1"," ien print ( Id_DataFrame [ ["NomColonne1","
IdDataFrame ["NomColonne"] [ N° LigneInitial : N° LigneFinal ] ou bien print ( IdDataFrame ["NomColonne"] [ N° LigneInitial : N° LigneFinal ])
IdDataFrame.iloc [ N° Ligne ] ou bien print ( IdDataFrame.iloc [ N° Ligne ] )
IdDataFrame.head ( n ) ou bien print ( IdDataFrame.head ( n ) )
IdDataFrame.tail ( n ) ou bien print ( IdDataFrame.tail ( n ) )
IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] ou bien print ( IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] )
IdDataFrame.iloc [ N° Ligne , N° Colonne ] ou bien print ( IdDataFrame.iloc [ N° Ligne , N° Colonne ] )
IdDataFrame.loc [ N° ligne , "NomColonne" ] = Valeur (ou Formule)
Modification et ajout des données dans
Id_DataFrame.loc [ N° ligne ] = [ Liste_Valeur ]
un DataFrame
Id_DataFrame [ "NomColonne" ] = Valeur (ou Formule)
Resultat = Id_DataFrame.drop_duplicates ( )
Resultat = Id_DataFrame.dropna ( )
Resultat = Id_DtaFrame.dropna ( axis = 1 )
Les fonctions statistiques mean ( ) min ( ) max ( ) sum ( ) count ( )
IdDataFrame [ IdDataFrame [ "NomColonne" ] OperateurComparaison Valeur ]
selon une ou plusieurs conditions IdDataFrame [( IdDataFrame ["NomColonne"] OperateurComp Valeur) OperateurLogique ( IdDataFrame ["NomColonne"] OperateurComp Valeur )]

IdDataFrame.plot.bar (x = "NomColonneAbscisse", y = "NomColonneOrdonnée", title = "TitreGraphique", color = "CouleurGraphique")


graphique IdDataFrame.plot.line (x = "NomColonneAbscisse", y = "NomColonneOrdonnée", title = "TitreGraphique", color = "CouleurGraphique")
alias_matplotlib.show ( )

- Page 3/3 -
EXAMEN DU BACCALAURÉAT SESSION
RÉPUBLIQUE TUNISIENNE
ÉPREUVE
Section : Économie et Gestion
Ministère de l'Éducation
: 0.5 Durée : 1h

Le sujet comporte 3 pages numérotées de 1/3 à 3/3

Important : Il est demandé au candidat de créer dans le dossier Bac2024 situé sur la racine du disque C, un
dossier de travail portant son il doit enregistrer, au fur et à
mesure, tous les fichiers solutions de ce sujet.

Afin de gérer les opérations d des livres de la bibliothèque d un lycée


de données simplifiée intitulée "Bibliothèque" décrite par le schéma textuel suivant :
LIVRE (CodeLivre, Auteur, Titre, NbrExemp, Domaine)
ELEVE (IdElève, NomPrénom, Classe)
EMPRUNT (NumEmprunt, IdElève#, CodeLivre#, DateEmprunt, DateRetour)
Sachant que :
LIVRE est une table contenant les informations relatives aux livres.
ELEVE est une table contenant les informations relatives aux élèves.
EMPRUNT est une table contenant les informations relatives aux .

Soit la description des colonnes des tables de cette base de données :

Nom Description Type Taille Format Contrainte


CodeLivre Code d livre Texte 8
Auteur Nom et prénom d auteur d livre Texte 50 Null interdit
Titre Titre d un livre Texte 50 Null interdit
N
NbrExemp Numérique Entier >0
disponible dans la bibliothèque
Domaine Domaine d livre Texte 20

IdElève Identifiant d élève Texte 6


NomPrénom Nom et prénom d élève Texte 50 Null interdit
Classe Texte 10

NumEmprunt Numéro d emprunt NuméroAuto


DateEmprunt Date/Heure Date, abrégé Null interdit
DateRetour Date/Heure Date, abrégé Null interdit

1) Créer, dans le dossier de travail, la base de données nommée "Bibliothèque".


2) Créer les tables et les relations relatives à cette base de données tout en respectant les types, les tailles,
les formats et les contraintes cités dans la description ci-dessus.
- Page 1/3 -
3) Remplir les tables par les données représentées dans les tableaux suivants :
LIVRE
CodeLivre Auteur Titre NbrExemp Domaine
LIV24001 Jason R. Briggs Python pour les kids 15 Informatique
LIV04101 Vincent Sénétaire La cybersécurité de zéro 10 Informatique
LIV24006 Adam Smith La richesse des nations 5 Économie
LIV00171 Brian Greene 10 Astronomie
LIV01001 Carl Sagan Cosmos 15 Astronomie
.
ELEVE EMPRUNT
IdElève NomPrénom Classe NumEmprunt IdElève CodeLivre DateEmprunt DateRetour
EL0410 Samar Salhi 4 EG 1 1 EL0410 Liv24001 18/01/2024 30/01/2024
EL0305 Kamel Yangui 3 EG 2 2 EL0305 Liv24001 18/01/2024 25/02/2024
EL0117 Hedi Tounsi 4 EG 1 3 EL0518 Liv24006 20/01/2024 01/02/2024
EL0518 Souha Makni 3 EG 1 4 EL0518 Liv24006 01/02/2024 26/02/2024
EL0411 Ali Mefteh 4 EG 3 5 EL0411 Liv04101 22/01/2024 27/03/2024

4) Créer les requêtes suivantes :


R1 : Augmenter de 10 le nombre d ayant le code "LIV04101",
R2 : Supprimer Hedi Tounsi" de la table "ELEVE",
R3 : Afficher son code, son titre ainsi que le nombre
janvier 2024,

5) Exporter, dans le dossier de travail et sous le nom "livre.csv", le contenu de la table "LIVRE" au format
csv (Point-virgule en séparateur de champs, point en séparateur décimal, page de codes : Unicode
(UTF-8) et inclure les noms des champs sur la première ligne).

B) À loitant la bibliothèque Pandas :


1) Créer un fichier Livre" dans le dossier de travail.
2) Choisir les méthodes et les propriétés adéquates, à partir de de la page 3/3, pour écrire dans le
fichier "Livre" les scripts permettant de ( ) :
a) importer le contenu du fichier "livre.csv" et le stocker dans un DataFrame à nommer "dflivre",
b) afficher les noms des colonnes du DataFrame "dflivre",
c) afficher le nombre total d es livres du domaine "Astronomie",
d) afficher la liste des livres ("Titre" et "NbrExemp" 8,
e) trier le DataFrame "dflivre" par ordre croissant des titres des livres puis afficher son contenu,
f) créer et afficher un graphique, en barres jaunes à partir du DataFrame "dflivre", représentant le
NbrExemp") pour chaque livre ("CodeLivre"). Attribuer au graphique le
titre "Nombre d ".

Partie A (13 points) B (7 points)


Grille
Question 1 2 3 4 5 1 2.a. 2.b. 2.c. 2.d. 2.e. 2.f.
Note 0.5 4.5 3 4 1 0.5 1.25 0.25 1 1 1.25 1.75

- Page 2/3 -
ANNEXE
Les méthodes et les propriétés à utiliser avec la bibliothèque pandas
Catégorie Syntaxe
IdDataFrame = pandas.DataFrame ({"NomCol Nom
Importation des données dans un IdDataFrame = pandas.read_excel ("Chemin/ Nom_Fichier.extension", "Nom_Feuille")
DataFrame IdDataFrame = pandas.read_csv ("Chemin/Nom_Fichier.extension", sep = "séparateur")
IdDataFrame.shape ou bien print (IdDataFrame.shape)
IdDataFrame.size ou bien print (IdDataFrame.size)
IdDataFrame.info ( ) ou bien print ( IdDataFrame.info ( ) )
IdDataFrame.describe ( ) ou bien print ( IdDataFrame.describe ( ) )
IdDataFrame.columns ou bien print ( IdDataFrame.columns )
Resultat = IdDataFrame.rename (columns

Resultat = IdDataFrame.drop ( IdDataFrame.index [ N° LigneInitial : N° LigneFinal ] )


Resultat =
IdDataFrame ou bien print ( IdDataFrame )
IdDataFrame [ "NomColonne" ] ou bien print ( IdDataFrame [ "NomColonne" ] )
Id_DataFrame [ ["NomColonne1"," ien print ( Id_DataFrame [ ["NomColonne1","
IdDataFrame ["NomColonne"] [ N° LigneInitial : N° LigneFinal ] ou bien print ( IdDataFrame ["NomColonne"] [ N° LigneInitial : N° LigneFinal ])
IdDataFrame.iloc [ N° Ligne ] ou bien print ( IdDataFrame.iloc [ N° Ligne ] )
IdDataFrame.head ( n ) ou bien print ( IdDataFrame.head ( n ) )
IdDataFrame.tail ( n ) ou bien print ( IdDataFrame.tail ( n ) )
IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] ou bien print ( IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] )
IdDataFrame.iloc [ N° Ligne , N° Colonne ] ou bien print ( IdDataFrame.iloc [ N° Ligne , N° Colonne ] )
IdDataFrame.loc [ N° ligne , "NomColonne" ] = Valeur (ou Formule)
Modification et ajout des données dans
Id_DataFrame.loc [ N° ligne ] = [ Liste_Valeur ]
un DataFrame
Id_DataFrame [ "NomColonne" ] = Valeur (ou Formule)
Resultat = Id_DataFrame.drop_duplicates ( )
Resultat = Id_DataFrame.dropna ( )
Resultat = Id_DtaFrame.dropna ( axis = 1 )
Les fonctions statistiques mean ( ) min ( ) max ( ) sum ( ) count ( )
IdDataFrame [ IdDataFrame [ "NomColonne" ] OperateurComparaison Valeur ]
selon une ou plusieurs conditions IdDataFrame [( IdDataFrame ["NomColonne"] OperateurComp Valeur) OperateurLogique ( IdDataFrame ["NomColonne"] OperateurComp Valeur )]
DataFrame_Trié = IdDataFrame.sort_values
IdDataFrame.plot.bar (x = "NomColonneAbscisse", y = "NomColonneOrdonnée", title = "TitreGraphique", color = "CouleurGraphique")
IdDataFrame.plot.line (x = "NomColonneAbscisse", y = "NomColonneOrdonnée", title = "TitreGraphique", color = "CouleurGraphique")
alias_matplotlib.show ( )

- Page 3/3 -
EXAMEN DU BACCALAURÉAT SESSION
RÉPUBLIQUE TUNISIENNE
ÉPREUVE
Section : Économie et Gestion
Ministère de l'Éducation
: 0.5 Durée : 1h

Le sujet comporte 3 pages numérotées de 1/3 à 3/3


Important : Il est demandé au candidat de créer dans le dossier Bac2024 situé sur la racine du disque C, un
dossier de travail portant son il doit enregistrer, au fur et à
mesure, tous les fichiers solutions de ce sujet.

Afin de formateurs, un centre de formation utilise la base de


données simplifiée intitulée "Formation" décrite par le schéma textuel suivant :
FORMATEUR (CIN, NomPrénom, Tel, Diplôme)
THEME (CodeThème, Titre, Niveau, NbrSéance, PrixSéance)
AFFECTATION (NumAff, CIN#, CodeThème#, DateDébut, NumSalle)
Sachant que :
FORMATEUR est une table contenant les informations relatives aux formateurs.
THEME est une table contenant les informations relatives aux thèmes de formation.
AFFECTATION est une table contenant les informations relatives aux formations affectées.
Soit la description des colonnes des tables de cette base de données :
Nom Description Type Taille Format Contrainte
CIN Texte 8
NomPrénom Texte 50 Null interdit
Tel Numéro de téléphone d formateur Texte 8 Null interdit
Diplôme formateur Texte 20
CodeThème de formation Texte 3
Titre Titre d hème de formation Texte 50 Null interdit
Niveau Niveau d thème (1, 2, 3) Texte 1 "1" par défaut
NbrSéance Nombre de séance une formation Numérique Entier >0
PrixSéance Prix formation Numérique Réel >0
NumAff NuméroAuto
DateDébut Date de début d formation Date/Heure Date, abrégé Null interdit
NumSalle Numéro de la salle de formation Texte 1 Null interdit

1) Créer, dans le dossier de travail, la base de données nommée "Formation".


2) Créer les tables et les relations relatives à cette base de données tout en respectant les types, les tailles,
les formats et les contraintes cités dans la description ci-dessus.
3) Remplir les tables par les données représentées dans les tableaux suivants :
FORMATEUR
CIN NomPrénom Tel Diplôme
25156852 Ali BEN SALEH 33444666 Ingénieur
26478561 Amel BEN ALI 44777333 Licence
26879654 Houda BEN SAAD 66999000 Doctorat
27478532 Ahmed BEN AMOR 77000111 Master
.
65656565 Kamel BEN ABIDI 88222555 Ingénieur
- Page 1/3 -
THEME
CodeThème Titre Niveau NbrSéance PrixSéance
T01 La conception web 1 30 20.000
T02 Les réseaux informatiques 1 20 25.000
T03 La conception web 2 30 20.000
T04 La sécurité informatique 1 40 15.000
T05 Les réseaux informatiques 2 30 25.000
.
AFFECTATION
NumAff CIN CodeThème DateDébut NumSalle
1 27478532 T01 22/01/2024 3
2 26478561 T02 26/02/2024 2
3 65656565 T02 15/02/2024 1
4 65656565 T03 18/09/2023 4
5 27478532 T01 18/09/2023 1

4) Créer les requêtes suivantes :


R1 : Afficher les informations (CIN, Tel, Diplôme) relatives à un nom ("NomPrénom
formateur donné.
R2 : Augmenter de 10 % 2,
R3 : Afficher la liste des affectations (NomPrénom, Titre, Niveau, DateDébut, NumSalle) de
2024,

5) Exporter, dans le dossier de travail et sous le nom "thème.csv", le contenu de la table "THEME" au
format csv (Point-virgule en séparateur de champs, point en séparateur décimal, page de codes :
Unicode (UTF-8) et inclure les noms des champs sur la première ligne).

loitant la bibliothèque Pandas :

1) Créer un fichier Thème" dans le dossier de travail.


2) Choisir les méthodes et les propriétés adéquates, à partir de de la page 3/3, pour écrire dans le
fichier "Thème" les scripts permettant de ( ) :
a) importer le contenu du fichier "thème.csv" et le stocker dans un DataFrame à nommer "dftheme",
b) afficher le contenu du DataFrame "dftheme",
c) renommer les colonnes "CodeThème" et "Titre" respectivement par "Code du Thème" et "Titre du
Thème",
d) calculer, dans une nouvelle colonne à nommer "PrixTotal", e formation puis
afficher le contenu du DataFrame "dftheme" sachant que : PrixTotal = NbrSéance * PrixSéance
e) trier le DataFrame "dftheme" dans un nouveau DataFrame à nommer "dftheme_tri
décroissant des titres des thèmes puis selon
DataFrame "dftheme_tri".
f) afficher les titres des thèmes nécessitant plus de 25 séances de formation.

Partie A (13 points) B (7 points)


Grille
Question 1 2 3 4 5 1 2.a. 2.b. 2.c. 2.d. 2.e. 2.f.
Note 0.5 4.5 3 4 1 0.5 1.25 0.25 1 1.25 1.75 1

- Page 2/3 -
ANNEXE
Les méthodes et les propriétés à utiliser avec la bibliothèque pandas
Catégorie Syntaxe
IdDataFrame = pandas.DataFrame ({"NomColonne1":[ Nom
Importation des données dans un IdDataFrame = pandas.read_excel ("Chemin/ Nom_Fichier.extension", "Nom_Feuille")
DataFrame IdDataFrame = pandas.read_csv ("Chemin/Nom_Fichier.extension", sep = "séparateur")
IdDataFrame.shape ou bien print (IdDataFrame.shape)
IdDataFrame.size ou bien print (IdDataFrame.size)
IdDataFrame.info ( ) ou bien print ( IdDataFrame.info ( ) )
IdDataFrame.describe ( ) ou bien print ( IdDataFrame.describe ( ) )
IdDataFrame.columns ou bien print ( IdDataFrame.columns )

Resultat = IdDataFrame.drop ( IdDataFrame.index [ N° LigneInitial : N° LigneFinal ] )

IdDataFrame ou bien print ( IdDataFrame )


IdDataFrame [ "NomColonne" ] ou bien print ( IdDataFrame [ "NomColonne" ] )
Id_DataFrame [ ["NomColonne1"," ien print ( Id_DataFrame [ ["NomColonne1","
IdDataFrame ["NomColonne"] [ N° LigneInitial : N° LigneFinal ] ou bien print ( IdDataFrame ["NomColonne"] [ N° LigneInitial : N° LigneFinal ])
IdDataFrame.iloc [ N° Ligne ] ou bien print ( IdDataFrame.iloc [ N° Ligne ] )
IdDataFrame.head ( n ) ou bien print ( IdDataFrame.head ( n ) )
IdDataFrame.tail ( n ) ou bien print ( IdDataFrame.tail ( n ) )
IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] ou bien print ( IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] )
IdDataFrame.iloc [ N° Ligne , N° Colonne ] ou bien print ( IdDataFrame.iloc [ N° Ligne , N° Colonne ] )
IdDataFrame.loc [ N° ligne , "NomColonne" ] = Valeur (ou Formule)
Modification et ajout des données dans
Id_DataFrame.loc [ N° ligne ] = [ Liste_Valeur ]
un DataFrame
Id_DataFrame [ "NomColonne" ] = Valeur (ou Formule)
Resultat = Id_DataFrame.drop_duplicates ( )
Resultat = Id_DataFrame.dropna ( )
Resultat = Id_DtaFrame.dropna ( axis = 1 )
Les fonctions statistiques mean ( ) min ( ) max ( ) sum ( ) count ( )
IdDataFrame [ IdDataFrame [ "NomColonne" ] OperateurComparaison Valeur ]
selon une ou plusieurs conditions IdDataFrame [( IdDataFrame ["NomColonne"] OperateurComp Valeur) OperateurLogique ( IdDataFrame ["NomColonne"] OperateurComp Valeur )]

IdDataFrame.plot.bar (x = "NomColonneAbscisse", y = "NomColonneOrdonnée", title = "TitreGraphique", color = "CouleurGraphique")


IdDataFrame.plot.line (x = "NomColonneAbscisse", y = "NomColonneOrdonnée", title = "TitreGraphique", color = "CouleurGraphique")
alias_matplotlib.show ( )

- Page 3/3 -
EXAMEN DU BACCALAURÉAT SESSION
RÉPUBLIQUE TUNISIENNE
ÉPREUVE
Section : Économie et Gestion
Ministère de l'Éducation
Coefficient de : 0.5 Durée : 1h

Le sujet comporte 3 pages numérotées de 1/3 à 3/3


Important : Il est demandé au candidat de créer dans le dossier Bac2024 situé sur la racine du disque C, un
dossier de travail portant son il doit enregistrer, au fur et à
mesure, tous les fichiers solutions de ce sujet.
Afin de mieux gérer les affectations des conducteurs pour le transport des marchandises, une société de
distribution propose utiliser la base de données simplifiée intitulée "Gestion_Affectations" décrite par le
schéma textuel suivant :
CAMION (MatCam, Marque, Type, PTAC)
CONDUCTEUR (CINCond, NomPrénom, Tel)
AFFECTATION (NumAff, MatCam#, CINCond#, DateDébAff, DateFinAff, Destination, PoidsMar)
Sachant que :
CAMION est une table contenant les informations relatives aux camions.
CONDUCTEUR est une table contenant les informations relatives aux conducteurs.
AFFECTATION est une table contenant les informations relatives aux affectations des conducteurs.
Soit la description des colonnes des tables de cette base de données :
Nom Description Type Taille Format Contrainte
MatCam Matricule camion Texte 11
Marque camion Texte 20
Type Type d camion Texte 50
PTAC Poids Total Autorisé en Charge (en Tonne) Numérique Réel >0
CINCond Numéro de la CIN conducteur Texte 8
NomPrénom Nom et prénom conducteur Texte 50 Null interdit
Tel Numéro de téléphone d conducteur Texte 8
NumAff Numéro Auto
DateDébAff une affectation Date/Heure Date, général Null interdit
DateFinAff Date de une affectation Date/Heure Date, général Null interdit
Destination une marchandise Texte 50 Null interdit
PoidsMar Poids de la marchandise à transporter (en Tonne) Numérique Réel >0

A)
1) Créer, dans le dossier de travail, la base de données nommée "Gestion_Affectations".
2) Créer les tables et les relations de cette base de données tout en respectant les types, les tailles, les
formats et les contraintes cités dans la description ci-dessus.
3) Remplir les tables par les données représentées dans les tableaux suivants :
CAMION
MatCam Marque Type PTAC
250 TU 2222 SCANIA Camion Semi-remorque 40
250 TU 3333 VOLVO Camion Semi-remorque 38
251 TU 1111 IVECO Camion Frigorifique 7,2
252 TU 8888 MAN Camion Plateau 35
- Page 1/3 -
CONDUCTEUR
CINCond NomPrénom Tel
25551111 Aydi Lamjed 33222000
19999000 Nsibi Aida 38777111
19944444 Nsiri Mounir 32666222
23388888 Salhi Mondher 34999555

AFFECTATION
NumAff MatCam CINCond DateDébAff DateFinAff Destination PoidsMar
1 250 TU 2222 19944444 02/04/2024 03/04/2024 Sfax 38
2 250 TU 2222 23388888 04/04/2024 10/04/2024 Gabès 40
3 251 TU 1111 19999000 13/04/2024 15/04/2024 Gafsa 5
4 252 TU 8888 19944444 04/04/2024 07/04/2024 Gabès 20
5 250 TU 3333 23388888 15/04/2024 18/04/2024 Gabès 35
4) Créer les requêtes suivantes :
R1 : Afficher la liste des camions (MatCam, Marque, Type, PTAC) utilisés pour transporter des
marchandises vers une ville donnée,
R2 : Afficher les informations (NomPrénom, Tel) relatives aux conducteurs qui ont transportés
des marchandises à Gabès ainsi que le nombre de missions effectuées,
R3 : Afficher toutes les affectations (MatCam, NomPrénom, Destination, PoidsMar, PTAC)
avril 2024 et dont le poids de la marchandise transportée dépasse 10
tonnes.
5) Exporter, dans le dossier de travail, le résultat de la requête "R3" dans un classeur à nommer
"missions.xlsx".

B) :
1) Missions" dans le dossier de travail.
2) Utiliser les méthodes et les propriétés adéquates, à partir de de la page 3/3, pour écrire dans le
fichier "Missions" les scripts permettant de ( ) :
a) importer le contenu du classeur "missions.xlsx" et le stocker dans un DataFrame à nommer "dfmis",
b) afficher le contenu du DataFrame "dfmis",
c) renommer la colonne "PoidsMar" du DataFrame "dfmis" par "Poids",
d) trier le DataFrame "dfmis" dans un nouveau DataFrame à nommer "dfmis_tri" selon
croissant des poids des marchandises transportées,
e) afficher la quantité moyenne de marchandises transportées par le conducteur "Nsiri Mounir",

f) calculer dans une nouvelle colonne à nommer "Reste Charge" et pour chaque mission, la charge
restante dans le camion utilisé puis afficher le contenu du DataFrame "dfmin" sachant que : Reste
Charge = PTAC Poids.

Partie A (13 points) B (7 points)


Grille
Question 1 2 3 4 5 1 2.a. 2.b. 2.c. 2.d. 2.e. 2.f.
Note 0.5 4.5 3 4 1 0.5 1 0.25 1.5 1.25 1.25 1.25

- Page 2/3 -
ANNEXE
Les méthodes et les propriétés à utiliser avec la bibliothèque pandas
Catégorie Syntaxe
IdDataFrame = pandas.DataFrame ({"NomCol Nom
Importation des données dans un IdDataFrame = pandas.read_excel ("Chemin/ Nom_Fichier.extension", "Nom_Feuille")
DataFrame IdDataFrame = pandas.read_csv ("Chemin/Nom_Fichier.extension", sep = "séparateur")
IdDataFrame.shape ou bien print (IdDataFrame.shape)
IdDataFrame.size ou bien print (IdDataFrame.size)
IdDataFrame.info ( ) ou bien print ( IdDataFrame.info ( ) )
IdDataFrame.describe ( ) ou bien print ( IdDataFrame.describe ( ) )
IdDataFrame.columns ou bien print ( IdDataFrame.columns )

Resultat = IdDataFrame.drop ( IdDataFrame.index [ N° LigneInitial : N° LigneFinal ] )

IdDataFrame ou bien print ( IdDataFrame )


IdDataFrame [ "NomColonne" ] ou bien print ( IdDataFrame [ "NomColonne" ] )
Id_DataFrame [ ["NomColonne1"," ien print ( Id_DataFrame [ ["NomColonne1","
IdDataFrame ["NomColonne"] [ N° LigneInitial : N° LigneFinal ] ou bien print ( IdDataFrame ["NomColonne"] [ N° LigneInitial : N° LigneFinal ])
IdDataFrame.iloc [ N° Ligne ] ou bien print ( IdDataFrame.iloc [ N° Ligne ] )
IdDataFrame.head ( n ) ou bien print ( IdDataFrame.head ( n ) )
IdDataFrame.tail ( n ) ou bien print ( IdDataFrame.tail ( n ) )
IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] ou bien print ( IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] )
IdDataFrame.iloc [ N° Ligne , N° Colonne ] ou bien print ( IdDataFrame.iloc [ N° Ligne , N° Colonne ] )
IdDataFrame.loc [ N° ligne , "NomColonne" ] = Valeur (ou Formule)
Modification et ajout des données dans
Id_DataFrame.loc [ N° ligne ] = [ Liste_Valeur ]
un DataFrame
Id_DataFrame [ "NomColonne" ] = Valeur (ou Formule)
Resultat = Id_DataFrame.drop_duplicates ( )
Resultat = Id_DataFrame.dropna ( )
Resultat = Id_DtaFrame.dropna ( axis = 1 )
Les fonctions statistiques mean ( ) min ( ) max ( ) sum ( ) count ( )
IdDataFrame [ IdDataFrame [ "NomColonne" ] OperateurComparaison Valeur ]
selon une ou plusieurs conditions IdDataFrame [( IdDataFrame ["NomColonne"] OperateurComp Valeur) OperateurLogique ( IdDataFrame ["NomColonne"] OperateurComp Valeur )]
DataFrame_Trié = IdDataFrame.sort_values (
IdDataFrame.plot.bar (x = "NomColonneAbscisse", y = "NomColonneOrdonnée", title = "TitreGraphique", color = "CouleurGraphique")
IdDataFrame.plot.line (x = "NomColonneAbscisse", y = "NomColonneOrdonnée", title = "TitreGraphique", color = "CouleurGraphique")
alias_matplotlib.show ( )

- Page 3/3 -

Vous aimerez peut-être aussi