Corrigé examen fin de formation tsge 2012 | Exam-Lib
  1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
Dismiss Notice
Welcome to our Education website, plz like our page facebook to support us. Thank You and wish you good navigation

Corrigé examen fin de formation tsge 2012

abdelouafiNov 12, 2017

    1. abdelouafi

      abdelouafi Administrator Staff Member

      Messages:
      893
      Likes Received:
      14
      Trophy Points:
      18
      Joined
      Sep 13, 2016
      Correction Complet d'Examen Théorique De Fin De Formation 2012 - UML - Merise - SQL Server - POO - HTML - JavaScript - Réseaux
      Dossier 1 : UML - Merise :
      Voir le lien suivant : Correction EFF Théorie 2012 Partie UML et Merise

      Dossier 2 : SQL Server :
      Q 1 : Écrire une requête qui affiche le nombre de matchs joués dans la journée n°12.
      SELECT count(*)
      from Match
      Where numJournee=12
      Q 2 : Écrire une requête qui affiche le nombre de matchs joués par journée.
      SELECT numJournee, Count(numMatch)
      From Match
      Group By numJournee
      Q 3 : Écrire une requête qui affiche le match qui a compté le plus grand nombre de spectateurs..
      Select numMatch, dateMatch, numJournee
      From Match
      Where nombreSpectateur = (Select Max(nombreSpectateur) From Match)
      Q 4 : Écrire une requête qui affiche le nombre de points de l’équipe de code 112 ; le nombre de
      points se calcule de la façon suivante : une victoire donne 3 points, une égalité donne 1 point
      et une défaite donne 0 point.

      Solution 1 :
      Declare @nbVictoirs int , @nbEgalite int , @totalPoints int
      Select @nbVictoirs = Count(numMatch)
      From Match
      Where (nombreButLocaux > nombreButVisiteurs and codeEquipeLocaux=112) OR (nombreButLocaux < nombreButVisiteurs and codeEquipeVisiteurs=112)
      Select @nbEgalite = Count(numMatch)
      From Match
      Where (nombreButLocaux = nombreButVisiteurs) and (codeEquipeLocaux=112 OR codeEquipeVisiteurs=112)
      Set @totalPoints = @nbVictoirs * 3 + @nbEgalite
      Select @totalPoints
      Solution 2 :
      SELECT SUM(MyTable.resultat) FROM
      (SELECT resultat=COUNT(numMatch)*3 FROM Match
      WHERE (nombreButLocaux > nombreButVisiteurs and codeEquipeLocaux=112)
      OR (nombreButLocaux < nombreButVisiteurs and codeEquipeVisiteurs=112)
      UNION
      SELECT Count(numMatch) FROM Match
      WHERE (nombreButLocaux = nombreButVisiteurs)
      and (codeEquipeLocaux=112 OR codeEquipeVisiteurs=112)) MyTable

      Q 5 : Écrire une procédure stockée qui affiche les équipes qui ont gagné leur match dans une
      journée dont le numéro est donné comme paramètre.

      CREATE PROC Q5 @nbrjour int
      AS
      BEGIN
      SELECT codeEquipeLocaux AS 'Code Equipe' FROM Match
      WHERE nombreButLocaux > nombreButVisiteurs AND numJournee = @nbrjour
      UNION
      SELECT codeEquipeVisiteurs AS 'Code Equipe' FROM Match
      WHERE nombreButLocaux < nombreButVisiteurs AND numJournee = @nbrjour
      END
      EXEC Q5 1;
      Q 6 : Écrire un trigger qui refuse l’ajout d’une ligne à la table Match pour laquelle la colonne
      codeEquipeLocaux est égale à la colonne codeEquipeVisiteurs..

      CREATE TRIGGER question6 ON Match2 AFTER INSERT
      AS
      DECLARE @loc int , @vis int
      SELECT @loc= codeEquipeLocaux, @vis= codeEquipeVisiteurs FROM Inserted
      IF (@loc=@vis)
      BEGIN
      RAISERROR ('ATTENTION: codeEquipeLocaux == codeEquipeVisiteurs :p', 16, 1);
      Rollback
      END
      Dossier 3 : POO - Programmation Orientée Objet :
      Solution 1 : en Java Par : AJDI Yassin:
      Q 1 & Q 2 :
      public class Camera {
      protected int code;
      protected String type;
      protected int orientation;
      public Camera() {
      super();
      }
      public Camera(int code, String type) {
      super();
      this.code = code;
      this.type = type;
      }
      public int getCode() {
      return code;
      }
      public void setCode(int code) {
      this.code = code;
      }
      public String getType() {
      return type;
      }
      public void setType(String type) {
      this.type = type;
      }
      public int getOrientation() {
      return orientation;
      }
      public void setOrientation(int orientation) {
      this.orientation = orientation;
      }
      public void tourner(int sens) {
      this.orientation = sens;
      }
      public void afficher() {
      System.out.println("-Code: " + this.code + " Orientation:"
      + this.orientation);
      }
      }

      Q3 - Q4 - Q5 :
      public class CameraMobile extends Camera {
      private int abs;
      private int ord;
      public CameraMobile(String type, int code, int abs, int ord) {
      super(code, type);
      this.abs = abs;
      this.ord = ord;
      }
      public CameraMobile() {
      super();
      }
      }
      public int getAbs() {
      return abs;
      }
      public void setAbs(int abs) {
      this.abs = abs;
      }
      public int getOrd() {
      return ord;
      }
      public void setOrd(int ord) {
      this.ord = ord;
      }
      public void avancer(int d) {
      switch (this.orientation) {
      case 1:
      this.ord += d;break;
      case 2:
      this.abs += d;break;
      case 3:
      this.ord -= d;break;
      case 4:
      this.abs -= d;break;
      }
      }
      public void afficherPosition() {
      System.out.println("-position: abs=" + this.abs + " ord=" + this.ord);
      }
      public void afficher() {
      super.afficher();
      this.afficherPosition();
      }
      }

      Q 6 :
      public class classTest {
      public static void main(String[] args) {
      // TODO Auto-generated method stub
      CameraMobile cm1 = new CameraMobile("SUMSUNG", 213, 0, 0);
      cm1.afficher();
      // a
      cm1.setOrientation(2);
      cm1.afficher();
      // b
      cm1.setOrientation(4);
      cm1.avancer(10);
      cm1.afficher();
      // c
      cm1.setOrientation(1);
      cm1.avancer(16);
      cm1.afficher();
      // d
      cm1.setOrientation(2);
      cm1.avancer(5);
      cm1.afficher();
      // e
      cm1.setOrientation(3);
      cm1.avancer(12);
      cm1.afficher();
      }
      }


      Solution 2 : en C# :

      Q 1 - Q 2 :
      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Text;
      Public class Camera
      {
      private int code;
      private string type;
      private int orientation;
      public Camera()
      { }
      public Camera(int code, string type, int orientation) {
      this.code = code;
      this.type = type;
      if (orientation >= 1 && orientation <= 4)
      this.orientation = orientation;
      else throw new Exception("valeur incorrecte");
      }
      public int Code {
      get { return code; }
      set { code = value; }
      }
      public string Type {
      get { return type; }
      set { type = value; }
      }
      public int Orientation {
      get { return orientation; }
      set {
      if (value >= 1 && value <= 4)
      orientation = value;
      else throw new Exception("valeur incorrecte");
      }
      }
      public void tourner(int sens){
      if (sens >= 1 && sens <= 4)
      orientation = sens;
      else throw new Exception("valeur incorrecte");
      }
      public virtual void afficher(){
      Console.WriteLine("La caméra {0} a l'orientation {1}",code,orientation);
      }
      }

      Q 3 - Q 4 - Q 5 :
      Public class CameraMobile:Camera
      {
      private int abs;
      private int ord;
      public CameraMobile():base()
      { }
      public CameraMobile(int code, string type, int orientation,int abs,int ord) :base(code,type,orientation){
      this.abs = abs;
      this.ord = ord;
      }
      public void afficherPosition(){
      Console.WriteLine("Abscisse={0}-Ordonnée={1}",abs,ord);
      }
      public override void afficher()
      {
      base.afficher();
      afficherPosition();
      }
      public void avancer(int d){
      switch (this.Orientation){
      case 1: ord += d; break;
      case 2: abs += d; break;
      case 3: ord -= d; break;
      case 4: abs -= d; break;
      }
      }
      }

      Q 6 :
      Public class Test
      {
      static void Main(string[] args){
      CameraMobile cm = new CameraMobile(125, "Sony FX30", 1, 0, 0);
      cm.afficher();
      cm.tourner(2); cm.afficher();
      cm.tourner(4); cm.avancer(10); cm.afficher();
      cm.tourner(1); cm.avancer(16); cm.afficher();
      cm.tourner(2); cm.avancer(5); cm.afficher();
      cm.tourner(3); cm.avancer(12); cm.afficher();
      Console.ReadLine();
      }
      }

      Dossier 3 : HTML - JavaScript - Réseaux:

      Exercice 1 : HTML - JavaScript :
      Q 1 - Q 2 :
      <html >
      <head>
      <script type="text/javascript">
      function ChangeEtat(f) {
      if(f.accepter.checked == true) {f.validation.disabled = false }
      if(f.accepter.checked == false) {f.validation.disabled = true }
      }
      function valForm (f) {
      if(f.nom.value == "" || f.prenom.value == "" || f.jour.value == "" || f.mois.value == "" || f.an.value == "" || f.pass.value == "" || f.confpass.value == "")
      alert('Remplir tous les champs!!');
      else
      if(f.jour.value <=0 || f.jour.value >31|| f.mois.value <=0 || f.mois.value <=0 || f.mois.value>12 || f.an.value<1900)
      alert('Date incorrecte!!');
      else
      if (f.pass.value != f.confpass.value)
      alert('Le mot de passe et sa confirmation ne coïncident pas !! ');
      else
      f.submit();
      }
      </script>
      </head>
      <body >
      Pour s’inscrire, remplir le formulaire :< br >
      <form Action=" inscr.html" Method="Post" name="f1">
      Nom:<br>
      <input name="nom" size="30" ><br /><br />
      Prénom:<br>
      <input name="prenom" size="30" ><br /><br />
      Date de naissance:<br>
      <input name="jour" size="6" > <input name="mois" size="6" > <input name="an" size="6" ><br /><br />
      Mot de passe : <br />
      <input type="password" name="pass" size="30" >
      <br /><br />
      Confirmer mot de passe :<br>
      <input type="password" name="confpass" size="30" /><br /><br />
      <p><input type="checkbox" name="accepter" onClick=" ChangeEtat (this.form)" >J'accepte les conditions</p>
      <p>
      <input type="button" name="validation" value="Valider" disabled onClick="valForm(this.form)" >
      <input type="reset" value="Annuler" ></p>
      </form>
      </body>
      </html>

      Q 3 :
      On ajoute aux scripts, la fonction :
      function start() {
      setTimeout(window.close, 8000);
      }
      La function start s’éxécute au chargement de la page par :
      <body onload="start()">

      Exercice 2 : Réseaux :
      De Q1 à Q4 voir cours.
      Q5 :
      a - Donner les adresses IP et les masques de chaque machine.
      - les adresses autorisées sont (192.168.79.2 jusqu'à 192.168.79.254) sous un masque 255.255.255.0

      b - Donner le type de câble utilisé pour connecter les équipements entre eux.

      [​IMG]

      c - Donner la commande MSDOS pour tester si la machine 1 est connectée à Internet.
      - La commande MSDOS : ping 42.42.6.6
      d - On souhaite que la machine 1 joue le rôle d’un serveur Web (IIS ou Apache), donner les
      étapes d’installation et de configuration de ce serveur.
      - Voir cours.
       
      Related Threads
      Loading...

      Merci de partager ce post sur facebook

Share This Page

Share