0% found this document useful (0 votes)
4 views6 pages

Xhest

The XgestSimulator is a Java program that manages a student administration system, allowing students to log in and view their grades and exam results, while administrators can add students and view all registered students. The program features a main menu for role selection and handles user authentication. It also includes a Student class to manage individual student data and functionalities.

Uploaded by

bilalastephen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views6 pages

Xhest

The XgestSimulator is a Java program that manages a student administration system, allowing students to log in and view their grades and exam results, while administrators can add students and view all registered students. The program features a main menu for role selection and handles user authentication. It also includes a Student class to manage individual student data and functionalities.

Uploaded by

bilalastephen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

import java.util.

*;

// Classe principale pour gérer le système Xgest

public class XgestSimulator {

private static Map<String, Student> students = new HashMap<>();

private static Scanner scanner = new Scanner(System.in);

public static void main(String[] args) {

initializeSampleData();

startMenu();

// Menu principal

private static void startMenu() {

while (true) {

System.out.println("\n=== XGEST SIMULATEUR ===");

System.out.println("1. Élève");

System.out.println("2. Administrateur");

System.out.println("3. Quitter");

System.out.print("Choisir un rôle: ");

int choice = scanner.nextInt();

scanner.nextLine(); // Nettoyer le buffer

switch (choice) {

case 1 -> studentLogin();

case 2 -> adminMenu();

case 3 -> System.exit(0);

default -> System.out.println("Option invalide!");


}

// Authentification élève

private static void studentLogin() {

System.out.print("\nIdentifiant (numéro élève): ");

String id = scanner.nextLine();

System.out.print("Mot de passe: ");

String password = scanner.nextLine();

if (students.containsKey(id) &&
students.get(id).getPassword().equals(password)) {

studentMenu(students.get(id));

} else {

System.out.println("Identifiants incorrects!");

// Menu élève

private static void studentMenu(Student student) {

while (true) {

System.out.println("\n=== ESPACE ÉLÈVE ===");

System.out.println("1. Voir bulletin");

System.out.println("2. Voir résultats examens");

System.out.println("3. Déconnexion");

System.out.print("Choix: ");
int choice = scanner.nextInt();

scanner.nextLine();

switch (choice) {

case 1 -> student.displayGrades();

case 2 -> student.displayExamResults();

case 3 -> { return; }

default -> System.out.println("Option invalide!");

// Menu administrateur

private static void adminMenu() {

// Ajouter une authentification réelle ici

while (true) {

System.out.println("\n=== PANEL ADMIN ===");

System.out.println("1. Ajouter un élève");

System.out.println("2. Voir tous les élèves");

System.out.println("3. Retour");

System.out.print("Choix: ");

int choice = scanner.nextInt();

scanner.nextLine();

switch (choice) {

case 1 -> addStudent();

case 2 -> displayAllStudents();

case 3 -> { return; }


default -> System.out.println("Option invalide!");

private static void addStudent() {

System.out.print("Nom de l'élève: ");

String name = scanner.nextLine();

System.out.print("Identifiant: ");

String id = scanner.nextLine();

System.out.print("Mot de passe: ");

String password = scanner.nextLine();

students.put(id, new Student(name, id, password));

System.out.println("Élève ajouté avec succès!");

private static void displayAllStudents() {

System.out.println("\nLISTE DES ÉLÈVES:");

students.values().forEach(s ->

System.out.println(s.getId() + " - " + s.getName())

);

private static void initializeSampleData() {

Student s1 = new Student("Jean Dupont", "12345", "pass123");

s1.addGrade("Mathématiques", 15.5);
s1.addGrade("Français", 12.0);

s1.setExamResult("BAC", "Admis");

students.put(s1.getId(), s1);

// Classe représentant un élève

class Student {

private String name;

private String id;

private String password;

private Map<String, Double> grades = new HashMap<>();

private Map<String, String> examResults = new HashMap<>();

public Student(String name, String id, String password) {

this.name = name;

this.id = id;

this.password = password;

public void addGrade(String subject, double grade) {

grades.put(subject, grade);

public void setExamResult(String exam, String result) {

examResults.put(exam, result);

public void displayGrades() {


System.out.println("\nBULLETIN SCOLAIRE DE " +
name.toUpperCase());

grades.forEach((subject, grade) ->

System.out.printf("%-15s: %.1f/20\n", subject, grade)

);

public void displayExamResults() {

System.out.println("\nRÉSULTATS D'EXAMENS:");

examResults.forEach((exam, result) ->

System.out.printf("%-12s: %s\n", exam, result)

);

// Getters

public String getName() { return name; }

public String getId() { return id; }

public String getPassword() { return password; }

You might also like