Modèle de concours : Technicien de 3e grade — FSJES — Université Mohammed Premier, Oujda — Développement informatique 2023
⬇️ Télécharger le PDF Adresse permanente : wadifa-info.com/fr/modele-concours/940
En bref
Ce document est une ancienne épreuve écrite du concours de Technicien de 3e grade organisé par FSJES — Université Mohammed Premier, Oujda (2023), publiée sur Wadifa Info en consultation et téléchargement PDF gratuits, avec une correction proposée.
- Organisme
- FSJES — Université Mohammed Premier, Oujda
- Grade
- Technicien de 3e grade
- Spécialité
- Développement informatique
- Année
- 2023
- Pages
- 2
- Langue des questions
- français
- Correction
- correction proposée disponible sur cette page
📝 Texte des questions (extrait automatiquement des pages scannées)
Ce texte est extrait automatiquement des images de l'épreuve et peut contenir des erreurs de lecture — les images ci-dessus font foi.
— صفحة 1 —
Sociales
Université Mohammed Premier
نا معن ماب pcs
Oujda جم ح تج
١ Faculté des Sciences Juridiques, Économiques et 4
جح ps
Concours de recrutement d’un téhnicjon de troisième grade
Spécialité : Développement |
Épreuve : Infor, rente
Session : 15 octobrg
Durée : 3h 2033
Exercice 1 : :
1. Quolle أي la différence entre un langage de Programmation com
108 pilé et un langoge inter-
prété ? Donnez deux exemples pour chaque type de langage. an
2. Quelle est lu différence entre php ot javnseript,
3. Quelle cst lu différence entre HTML, CSS #t javascript.
A. Quelle est la différence entre un serveur web ét un serveur d'applications 7 Donnez deux
exemples pour chaque serveur.
5. Quello est ln différence entre HTTP et 7
6. Citez trois risques de sécurité informatique et précisez les mesures à preudre ?
Exercice 2 :
Quol sera le résultat du code Java suivant :
public class Test {
public static void muin(String[] data) )
int x = 10;
System. out. printin (“y =
System .out.printin ("x ="
System.out- print (i =" +
Exercice 3 :
Écrivez un programmé Jova où C qui caleulé la somme des nombres Iinpairs de 1 à n,
un nombre entier saisi par l'utilisateur, L'entfet saisi doit être supérieur à 1, sinon l'uti
كسم
doit saisir un nouveau entier.
wadifa-info.com
— صفحة 2 —
deux classes Juva Etudiant et GestionBtudiant : سؤر
10
|. La classe Etudiant doit avoir les attributs nom, Âge ct moyenne.
2. La classe GestionBtudlant dot avoir des méthodes pour ajouter, afficher et rechercher
des étudinnts pur le nom.
3, Testez les denx classes dans une méthode main().
Exercice 5 :
Dans un serveur MySQL تل
‘adresse 1P 192.168.1.1, les informations concernant les étudiants
de lu faculté sont stockées بل
nns lu base de données bdetudes. Soit In table Etudiant :
- Structure de la table “Etudiant ‘
2 \CREATE TABIE ‘Etudiant ‘
3 ‘id * int(11) 1701 NULL AUTO INCREMENT,
4 ‘nom* varchar(20) NOT NULL
5 *prenom* varchar(20) NOT NULL,
6 ‘enc* عمطععد )20( 201 NULL
7 ‘mot _de_passe* varchar(56) NOT NULL,
8 ‘date _inscription * dutotime NOT NULL,
9 FRIMARY KEY (‘id‘),
10| ‘UNIQUE KEY ‘ene‘ (‘ene*)
1. Expliquez les lignes 1 1٠
x 2. Donnez le code php qui permet de se connecter à la buse de données.
3. Donnez نا requête on php qui de permet récupérer les étudiants par ordre croissant.
4, Donnez le code php qui permet, d'afficher les données récupérées de la question précédente.
5. Donnez le code php qui permet d'insérer des données dans la table Etudiant.
6. Donnez le code php qui permet de fenner In connexion à la base de données bdetudes.
T. C'est quoi l'injection SQL et décrivez comment l'éviter.
Exercice 6 :
1, Parmi les adresses IP suivantes, donnez celles qui peuvent être affectées à des machines
et qui soient routables (justifiez vos réponses) :
(a) 196.12.25.13
(d) 15.10.20.23
(e) 192.168.1.1
(F) 192.168.1.256,
adresses (a), (b) et (e). ومن Donnez la classe et le masque par défaut .ظح
Donnez la notation binaire de 127,0.0.1. .3
wadifa-info.com
Correction proposée
Il s'agit d'une correction proposée, rédigée par l'équipe wadifa-info pour vous aider à comprendre la méthode — ce n'est pas un corrigé officiel de l'administration organisatrice.
Ce modèle est l'épreuve d'informatique du concours de recrutement d'un technicien de 3e grade, spécialité Développement informatique, de la Faculté des Sciences Juridiques, Économiques et Sociales — Université Mohammed Premier d'Oujda, session du 15 octobre 2023. Durée : 3 heures. Six exercices : culture web, lecture de code Java, programmation, POO, PHP/MySQL et adressage IP.
💡 Méthode : les exercices 2, 3 et 6 ont une réponse exacte et se corrigent vite — traitez-les en premier. Pour le code, le correcteur regarde surtout la logique (boucle de saisie, contrôle, requêtes préparées) : un code court et juste vaut mieux qu'un long code approximatif.
Exercice 1 — Questions de cours
- Compilé / interprété : un langage compilé est traduit une fois pour toutes en code machine avant l'exécution (exécution rapide, erreurs détectées à la compilation) : C, C++. Un langage interprété est lu et exécuté instruction par instruction par un interpréteur (portable, plus lent) : Python, PHP (ou JavaScript). Java est hybride : compilé en bytecode puis exécuté par la JVM.
- PHP / JavaScript : PHP s'exécute côté serveur et renvoie du HTML au navigateur (accès aux bases de données, sessions) ; JavaScript s'exécute principalement côté client, dans le navigateur (interactivité, manipulation du DOM, requêtes AJAX), et aussi côté serveur avec Node.js.
- HTML / CSS / JavaScript : HTML décrit la structure et le contenu de la page ; CSS gère la présentation (couleurs, mise en page, responsive) ; JavaScript ajoute le comportement dynamique.
- Serveur web / serveur d'applications : le serveur web répond aux requêtes HTTP et sert surtout des ressources statiques (ou délègue à un module) : Apache HTTP Server, Nginx (ou IIS). Le serveur d'applications exécute la logique métier et fournit des services (transactions, pool de connexions, sécurité) : Tomcat, WildFly/JBoss (ou GlassFish, WebLogic).
- HTTP / HTTPS : HTTP transmet en clair (port 80) ; HTTPS = HTTP encapsulé dans TLS (port 443) : chiffrement, intégrité des données et authentification du serveur par un certificat.
- Trois risques et mesures : logiciels malveillants / rançongiciels → antivirus, mises à jour, sauvegardes hors ligne ; hameçonnage (phishing) → sensibilisation, filtrage des e-mails, authentification à deux facteurs ; intrusion ou injection SQL → pare-feu, correctifs, requêtes préparées, mots de passe robustes.
Exercice 2 — Résultat du code Java
int y = x++;est une post-incrémentation : y reçoit l'ancienne valeur (10), puis x passe à 11.- Double boucle : i = 0, 1, 2 et j = 0, 1 ;
i + "" + jconcatène les deux chiffres sans séparateur, etprintn'ajoute pas de retour à la ligne.
y = 10 x = 11 000110112021
La dernière ligne correspond aux couples 00, 01, 10, 11, 20, 21. Si la chaîne était " " (avec un espace), on obtiendrait 0 00 11 01 12 02 1.
Exercice 3 — Somme des nombres impairs de 1 à n
import java.util.Scanner;
public class SommeImpairs {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n;
do {
System.out.print("Entrez un entier > 1 : ");
n = sc.nextInt();
} while (n <= 1); // ressaisie tant que n <= 1
int somme = 0;
for (int i = 1; i <= n; i += 2) { // 1, 3, 5, ...
somme += i;
}
System.out.println("Somme des impairs de 1 a " + n + " = " + somme);
sc.close();
}
}
Vérification : pour n = 7, 1 + 3 + 5 + 7 = 16 = 4² (la somme des k premiers impairs vaut k²).
Exercice 4 — Classes Etudiant et GestionEtudiant
L'intitulé de l'exercice est coupé en haut de la page 2 ; les trois consignes restent lisibles.
import java.util.ArrayList;
class Etudiant {
private String nom;
private int age;
private double moyenne;
public Etudiant(String nom, int age, double moyenne) {
this.nom = nom; this.age = age; this.moyenne = moyenne;
}
public String getNom() { return nom; }
@Override
public String toString() {
return nom + " | " + age + " ans | moyenne : " + moyenne;
}
}
class GestionEtudiant {
private ArrayList<Etudiant> liste = new ArrayList<>();
public void ajouter(Etudiant e) { liste.add(e); }
public void afficher() {
for (Etudiant e : liste) System.out.println(e);
}
public Etudiant rechercher(String nom) {
for (Etudiant e : liste)
if (e.getNom().equalsIgnoreCase(nom)) return e;
return null; // non trouvé
}
}
public class Main {
public static void main(String[] args) {
GestionEtudiant g = new GestionEtudiant();
g.ajouter(new Etudiant("Alpha", 20, 14.5));
g.ajouter(new Etudiant("Beta", 21, 16.25));
g.afficher();
Etudiant r = g.rechercher("beta");
System.out.println(r != null ? "Trouvé : " + r : "Introuvable");
}
}
Exercice 5 — PHP / MySQL
1. Explication des lignes 1 à 11
- 1 : commentaire SQL. 2 : création de la table
Etudiant. - 3 :
identier, obligatoire, AUTO_INCREMENT : MySQL génère automatiquement la valeur à chaque insertion. - 4–6 :
nom,prenom,cne: chaînes de 20 caractères au plus, NOT NULL (obligatoires). - 7 :
mot_de_passeVARCHAR(56), prévu pour une empreinte (hash) et non pour le mot de passe en clair. - 8 :
date_inscriptionde type DATETIME (date et heure), obligatoire. - 9 : clé primaire sur
id. 10 : contrainte d'unicité nomméecne: deux étudiants ne peuvent pas avoir le même CNE. 11 : fin de l'instruction.
2. Connexion (PDO)
<?php
try {
$pdo = new PDO('mysql:host=192.168.1.1;dbname=bdetudes;charset=utf8mb4',
'utilisateur', 'motdepasse',
[PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]);
} catch (PDOException $e) {
die('Connexion impossible');
}
3. Étudiants par ordre croissant (du nom)
$stmt = $pdo->query("SELECT id, nom, prenom, cne, date_inscription
FROM Etudiant ORDER BY nom ASC, prenom ASC");
4. Affichage
echo '<table><tr><th>Nom</th><th>Prénom</th><th>CNE</th></tr>';
foreach ($stmt->fetchAll(PDO::FETCH_ASSOC) as $e) {
echo '<tr><td>' . htmlspecialchars($e['nom']) . '</td><td>'
. htmlspecialchars($e['prenom']) . '</td><td>'
. htmlspecialchars($e['cne']) . '</td></tr>';
}
echo '</table>';
5. Insertion (requête préparée)
$sql = "INSERT INTO Etudiant (nom, prenom, cne, mot_de_passe, date_inscription)
VALUES (?, ?, ?, ?, NOW())";
$stmt = $pdo->prepare($sql);
$stmt->execute([$nom, $prenom, $cne, password_hash($mdp, PASSWORD_DEFAULT)]);
Attention : password_hash() produit au moins 60 caractères, ce qui dépasse le VARCHAR(56) de la table. Il faut donc élargir la colonne : ALTER TABLE Etudiant MODIFY mot_de_passe VARCHAR(255) NOT NULL;
6. Fermeture de la connexion
$stmt = null; $pdo = null; // avec mysqli : mysqli_close($conn);
7. Injection SQL
Attaque qui consiste à insérer du code SQL dans une donnée saisie pour modifier la requête exécutée. Exemple : saisir ' OR '1'='1 dans un champ de connexion rend la condition toujours vraie. Protection : requêtes préparées avec paramètres liés (PDO/mysqli), validation et typage des entrées, compte SQL à privilèges minimaux, messages d'erreur non détaillés en production.
Exercice 6 — Adressage IP
1. Adresses affectables et routables
- (a) 196.12.25.13 : oui — adresse publique de classe C, ni réseau ni diffusion.
- (b) 127.0.0.1 : non — adresse de bouclage (loopback), réservée à la machine locale.
- (c) 10.10.0.1 : non routable sur Internet — adresse privée (10.0.0.0/8), affectable en réseau local seulement, derrière du NAT.
- (d) 15.10.20.23 : oui — adresse publique de classe A.
- (e) 192.168.1.1 : non routable sur Internet — adresse privée (192.168.0.0/16).
- (f) 192.168.1.256 : invalide — un octet ne dépasse pas 255.
Réponse : (a) et (d).
2. Classe et masque par défaut
- (a) 196.12.25.13 : classe C (192–223), masque 255.255.255.0.
- (b) 127.0.0.1 : plage de la classe A (réservée au loopback), masque 255.0.0.0.
- (c) 10.10.0.1 : classe A, masque 255.0.0.0.
3. Notation binaire de 127.0.0.1
01111111.00000000.00000000.00000001
Conseil : en PHP, citez toujours les requêtes préparées et htmlspecialchars() : c'est le réflexe sécurité que le jury attend d'un technicien développeur.
Questions fréquentes sur ce sujet
Ce sujet est-il téléchargeable gratuitement ?
Le corrigé est-il inclus ?
Quel organisme et quel grade concerne ce sujet ?
De quelle session s'agit-il et dans quelle langue ?
Où trouver d'autres sujets du même concours ?
Vous préparez ce concours ?
Modèles similaires
Organisme : FSJES — Université Mohammed Premier, Oujda · 15 octobre 2023 — Copie issue de : archive publique de modèles de concours — document archivé tel que reçu ; l'avis officiel du concours fait foi.
}Citer cette page
Journaliste, blogueur, enseignant : copiez la référence ci-dessous et mettez un lien vers cette page.
Adresse permanente : https://www.wadifa-info.com/fr/modele-concours/940/modele-de-concours-technicien-de-3e-grade-fsjes-universite-mohammed-premier-oujda-developp
