Vous êtes sur la page 1sur 10

Examen National du Brevet de Technicien Supérieur Page

Session de Mai 2021 1


- Corrigé - 10
Centre National de l'Évaluation, des Examens

Filière : Multimédia et Conception Web Durée : 5 heures


Épreuve : Etude de cas informatique Coefficient : 60

Dossier 1

Partie d'Analyse
MCD :

1.1)
1 pt pour chaque entité et 0.5 pt pour chaque association
1.2)
MLD :
Centres(idCentre,adresse,CPCentre,ville) (0.5 pt)
LotVaccins(idLot,libelle,datePeremption) (0.5pt)
Spécialités(idSpecialité,designation) (0.5pt)
Coordination(idcentre,idLot,idSpecialite, jour, NbreHeures) (1.5pt)
Médecins (idMedecin, nom, prenom, email, tel, #idspecialite,#idMedecinChef) (1pt)
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 Page
-
2
Filière :Multimédia et Conception Web Épreuve : Etude de cas
10
informatique

Partie de la programmation
La classe Personnel
publicabstractclass Personnel {
private String cnie,nom,prenom;
privateintnbreHeuresSuppl;
publicabstractdoubleindemnite();
publicPersonnel(String cnie, String nom, String prénom) {
this.cnie = cnie;
this.nom = nom;
this.prenom = prénom;}
publicintgetNbreHeuresSuppl() {
returnnbreHeuresSuppl;}
publicvoidsetNbHeuresSupl(intnbreHeuresSuppl) {
this.nbreHeuresSuppl = nbreHeuresSuppl;}
public String toString() {
return"CNIE=" + cnie + "\nNom=" + nom + "\nPrénom=" + prenom;}
}

La classe Infirmier

publicclassInfirmierextends Personnel {
staticintcomptInf =0, anciennete;
private String diplome;
publicInfirmier(String numCin, String nom, String prenom, String diplome, intanciennete) {
super(numCin, nom, prenom);
comptInf++ ;
this.diplome = diplome;
this.anciennete = ancienneté;}
publicdoubleindemnite() {
if(anciennete<10) returngetNbreHeuresSuppl()*45;
else returngetNbreHeuresSuppl()*75;}
public String toString() {
returnsuper.toString()+"\n\tdiplôme=" + diplome + "\n\tancienneté=" + anciennete +
"\n\tnbHeuresSupl= " + getNbreHeuresSuppl();}
}
La classe Medecin
publicclassMedecinextends Personnel {
staticintcomptMed=0;
private String spécialite;
privatefinaldoubletauxHoraire=220;
publicMedecin(String numCin, String nom, String prenom, String spécialite) {
super(numCin, nom, prenom);
this.spécialite = specialite;
comptMed++;}
publicdoubleindemnite() {
returnthis.getNbreHeuresSuppl()*tauxHoraire;}
public String toString() {
returnsuper.toString()+"\n\tspécialité=" + spécialite + "\n\ttauxHoraire=" + tauxHoraire +
"\n\tnbHeuresSup=" +getNbreHeuresSuppl();}
}
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 Page
-
3
Filière :Multimédia et Conception Web Épreuve : Etude de cas
10
informatique

La classe Service
importjava.util.ArrayList;
importjava.util.Scanner;
publicclass Service {
private String intitulé;
privatefinalintnbreMaxInfirmier=12,nbreMaxMedecin= 4;
privateArrayList<Personnel>srv=newArrayList<Personnel>();
publicService(String intitulé) {
this.intitulé = intitulé;}

publicvoidajouterUnMedecin() {
Scanner lire = newScanner(System.in);
intnh;
String cin,nom,prenom,sp;
if(Medecin.comptMed<nbreMaxMedecin) {
System.out.println("CNIE : "); cin = lire.nextLine();
System.out.println("Nom : "); nom= lire.nextLine();
System.out.println("Prénom : "); prenom = lire.nextLine();
System.out.println("Spécialité : ");
sp = lire.nextLine();
srv.add(newMedecin(cin,nom,prenom,sp));
System.out.println("Nombre d'heures Supplémentaires : ");
nh = lire.nextInt();
srv.get(srv.size()-1).setNbHeuresSupl(nh);}
elseSystem.out.println("Nombre maximal de medecins atteint!");}

publicvoidajouterUnInfirmier() {
Scanner lire = new Scanner(System.in);
intnh,ancien;
String cin,nom,prenom,dplm;
if(Infirmier.comptInf<nbreMaxInfirmier) {
System.out.println("CNIE : "); cin = lire.nextLine();
System.out.println("Nom : "); nom= lire.nextLine();
System.out.println("Prénom : "); prenom = lire.nextLine();
System.out.println("Diplôme : "); dplm = lire.nextLine();
System.out.println("Ancienneté : ");ancien = lire.nextInt();
srv.add(new Infirmier(cin,nom,prenom,dplm,ancien));
System.out.println("Nombre d'heures Supplémentaires : ");
nh = lire.nextInt();
srv.get(srv.size()-1).setNbHeuresSupl(nh);}
elseSystem.out.println("Nombre maximal de infirmiers atteint!");}

publicvoidajouterPersonnel() {
charchoix;
Scanner lire = new Scanner(System.in);
do {
System.out.println("Ajouter un personnel Oui(o)/Non(n) ?");
choix = lire.nextLine().toUpperCase().charAt(0);
if(choix == 'O') {
System.out.println("M pour Medecin et I pour Infirmier ");
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 Page
-
4
Filière :Multimédia et Conception Web Épreuve : Etude de cas
10
informatique

charfct;
fct = lire.nextLine().toUpperCase().charAt(0);
if(fct == 'M') ajouterUnMedecin();
if(fct == 'I') ajouterUnInfirmier();
if(srv.size()>=(nbreMaxInfirmier+nbreMaxMedecin)) break;}
} while(choix=='O');}

publicvoidafficherSrv() {
System.out.println("\n======Service: "+ intitule+ " ========\n");
for (Personnel personnel : srv) {
System.out.println(personnel);
System.out.println("\n-------------------");} }

publicdoubletotalIndemnites() {
doubletotal=0;
for (Personnel personnel : srv)
total+=personnel.indemnite();
returntotal; }
}

La classe Main21
publicclass Main21 {

publicstaticvoid main(String[] args) {


Service srv1 = newService("Bab Marzouka");
srv1.ajouterPersonnel();
srv1.afficherSrv();
System.out.println("\n======total dépenses=====");
System.out.println(srv1.totalIndemnites());}
}
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 Page
-
5
Filière :Multimédia et Conception Web Épreuve : Etude de cas
10
informatique

Dossier 2

Question 2.2 : authentification.php

<?php
session_start();
include ("connexion.php");
?>
<br><br>
<table align="center" width="50%">
<tr><td colspan="2" align="center" style="vertical-align:bottom;font-size: 22;font-weight: 800;
text-decoration: underline; padding-bottom: 10;">Authentification </td></tr>
<formmethod=post>
<tr><td align="right">Login :</td><td><input type="text" name="login"></td></tr>
<tr><td align="right">Mot de passe :</td><td><input type="password"
name="pass"></td></tr>
<tr><td></td><td ><input type="submit" name="ok" value="envoyer"></td></tr>

</form>
</table>
<?php
if (isset($_POST['ok']))
{
$req="SELECT * FROM agentAdmins WHERE login='{$_POST['login']}' AND
motPass='{$_POST['pass']}'";
$result=mysqli_query($con,$req);
if (mysqli_num_rows($result)==1)
{
$row=mysqli_fetch_assoc($result);
$_SESSION['nom']=$row['nomCit'];
header('location:index.php');
}
else
echo "Login ou Mot de pass incorrect";
}

Question 2.3

Question 2.4 : centreVaccination.php


<?php
include ("connexion.php");
?>
<formmethod="post" action="">
CNIE :<input type="text" placeholder="A56675" name="cnie">
<input type="submit" name="ok" value ="Chercher">
</form>
<?php
if(isset($_POST['ok']))
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 Page
-
6
Filière :Multimédia et Conception Web Épreuve : Etude de cas
10
informatique

{
$sql="SELECT * FROM centres NATURAL JOIN citoyens WHERE cnieCitoyen=
'{$_POST['cnie']}'";
$req=mysqli_query($con,$sql);
if(mysqli_num_rows($req)==1)
{
$tabCitoyen=mysqli_fetch_assoc($req);?>
<table>
<tr>
<td align='right'>
CNIE :
</td>
<td Style='padding-left:20;'>
<?=$tabCitoyen['cnieCitoyen']; ?>
</td>
</tr>
<tr>
<td align='right'>
Nom :
</td>
<td Style='padding-left:20;'>
<?=$tabCitoyen['nomCit']; ?>
</td>
</tr>
<tr>
<td align='right'>
Prénom :
</td>
<td Style='padding-left:20;'>
<?=$tabCitoyen['prenomCit']; ?>
</td>
</tr>
<tr>
<td align='right'>
Date de naissance :
</td>
<td Style='padding-left:20;'>
<?=$tabCitoyen['dateNaissanceCit']; ?>
</td>
</tr>
<tr>
<td align='right'>
Intitulé du centre :
</td>
<td Style='padding-left:20;'>
<?=$tabCitoyen['intituleCent']; ?>
</td>
</tr>
<tr>
<td align='right'>
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 Page
-
7
Filière :Multimédia et Conception Web Épreuve : Etude de cas
10
informatique

Adresse du centre :
</td>
<td Style='padding-left:20;'>
<?=$tabCitoyen['adresseCent']; ?>
</td>
</tr>
</table>

<?php }
else
echo "Revoir votre numéro de CNIE ";
}

Question 2.5 : performanceVaccinateur.php

<?php
include ("connexion.php");

$req2="SELECT cnieVaccinateur,nom,prenom,intitule,ville, count(idVaccination) totalInj FROM


vaccinateurs NATURAL JOIN vaccination NATURAL JOIN centres
GROUP BY cnieVaccinateur HAVING count(idVaccination)>10000";

$result=mysqli_query($con,$req2);
$t=mysqli_fetch_all($result);
//affichage

?>

Question 2.6 : exporterListeXml.php

<?php
include ("connexion.php");
$f=fopen("listeVaccines.xml","a");
fputs($f,"<?xml version='1.0' encoding='ISO-8859-1'?>\n");
fputs($f,"<vaccines>\n");
$req1="SELECT * FROM citoyens NATURAL JOIN vaccination WHERE dose =2 ";
$result=mysqli_query($con,$req1);
while ($row=mysqli_fetch_assoc($result))
{
$vaccine="<vaccine cnie='{$row['cnieCitoyen']}'>\n";
$vaccine.="<identite> \n";
$vaccine.="<nom> {$row['nomCit']}></nom>\n";
$vaccine.="<prenom> {$row['prenomCit']}></prenom>\n";
$vaccine.="<dateNaissance> {$row['dateNaissanceCit']}></dateNaissance>\n";
// $vaccine.="<adresse> {$row['adresse']}></adresse>\n";
$vaccine.="<ville> {$row['villeCit']}></ville>\n";
$vaccine.="</identite> \n";
$vaccine.="<dateVaccin> {$row['dateVaccinCit']}</dateVaccin>\n";
$vaccine.="<centre> \n";
$req2="SELECT * FROM centres WHERE idCentre={$row['idCentre']} ";
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 Page
-
8
Filière :Multimédia et Conception Web Épreuve : Etude de cas
10
informatique

$rowc=mysqli_fetch_assoc(mysqli_query($con,$req2));
$vaccine.="<intitule> {$rowc['intituleCent']}></intitule>\n";
$vaccine.="<adresse> {$rowc['adresseCent']}></adresse>\n";
$vaccine.="<ville> {$rowc['villeCent']}></ville>\n";
$vaccine.="</centre> \n";
$vaccine.="</vaccine> \n";
fputs($f,$vaccine);
}
fputs($f,"</vaccines> \n");
fclose($f);

Question 2.7 : attestationVaccin.php


<?php
include ("connexion.php");
include('fpdf.php');
$pdf=new FPDF();

$pdf->AddPage();
$pdf->setfont("arial","",14);
$req="SELECT * FROM citoyens NATURAL JOIN vaccination WHERE dose=2 AND
cnieCItoyen='E123455'";
$result=mysqli_query ($con,$req);
$row=mysqli_fetch_assoc($result);
$pdf->image("entete.png",40,20,130);
$pdf->setXY(40,80);

$pdf->cell(80,10,utf8_decode("N° de la pièce d'identité : "),0,0);


$pdf->cell(40,10,$row['cnieCitoyen'],0,1);
$pdf->setX(40);
$pdf->cell(80,10,"Nom : ",0,0);
$pdf->cell(40,10,$row['nomCit'],0,1);
$pdf->setX(40);
$pdf->cell(80,10,utf8_decode("Prénom : "),0,0);
$pdf->cell(40,10,$row['prenomCit'],0,1);
$pdf->setX(40);
$pdf->cell(80,10,"Date de naissance : ",0,0);
$pdf->cell(40,10,$row['dateNaissanceCit'],0,1);
$pdf->setX(40);
$pdf->cell(80,10,"Ville : ",0,0);
$pdf->cell(40,10,$row['villeCit'],0,1);
$pdf->setX(40);
$pdf->cell(80,10,"Date de vaccination : ",0,0);
$pdf->cell(40,10,$row['dateVaccin'],0,1);

$pdf->output();
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 Page
-
9
Filière :Multimédia et Conception Web Épreuve : Etude de cas
10
informatique

Dossier 3

3.1
Nature du signal physique supporté Nom du support de transmission de données
Électrique Câble à paires torsadées
Lumineux Fibre optique
Ondes radiofréquence wifi

3.2
Nom de la couche Nom de l’unité de données de protocole
Application Donnée
Transport Segment
Réseau Paquet
Liaison Trame

3.3 C’est la façon dont les équipements d’un réseau sont interconnectés physiquement.
Bus ; étoile ; anneau ; point à point
Etoile
3.4 Etendu

3.5 Isolation de réseaux – amélioration des performances – sécurité des réseaux – faciliter la
gestion et l’administration des réseaux
3.6
Adresse réseau Nombre d’adresse ip du réseau
210.20.168.0 /24 256
172.18.56. 32/27 32
199 .78.25.0/25 128
160.230.128.0/22 1024
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 Page
-
10
Filière :Multimédia et Conception Web Épreuve : Etude de cas
10
informatique

3.7

Masque en Adresse IP de
Sous réseau Adresses IP réseau
décimal diffusion
Siège 192.168.20.0/26 255.255.255.192 192.168.20.63
Région A 192.168.20.64/26 255.255.255.192 192.168.20.127
Région B 192.168.20.128/27 255.255.255.224 192.168.20.159
Région C 192.168.20.160/28 255.255.255.240 192.168.20.175

3.8 Configuration TCP/IP automatique des équipements d’un réseau

3.9 Dynamic Host Configuration Protocol

3.10
Type de paquet Emis par
DHCPDISCOVER Client
DHCPACK Serveur
DHCPOFFER Serveur
DHCPREQUEST Client
3.11 Statique car les serveurs doivent avoir une adresse fixe vis-à-vis les clients

3.12 Etendue : plage d’adresses ip que le serveur peut distribuer


Exclusion : plage d’adresses ip que le serveur ne doit pas distribuer
Masque : c’est le masque du réseau
@ip DNS : l’adresse ip du serveur DNS de résolution des adresses FQDN en adresses IP
@ip passerelle : l’adresse ip de la passerelle de communication externe
3.13 Apache: Serveur http
MySql:Un système de gestion de base de données
PHP: Un langage de manipulation des base de données
3.14 Nom complet de domaine FQDN
3.15 Serveur DNS

Vous aimerez peut-être aussi