Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- public class StudentManagementSystem {
- static class Student {
- String name;
- int age;
- List<Integer> grades;
- int attendance;
- public Student(String name, int age) {
- this.name = name;
- this.age = age;
- this.grades = new ArrayList<>();
- this.attendance = 0;
- }
- public void addGrade(int grade) {
- grades.add(grade);
- }
- public void updateAttendance(int daysAttended) {
- this.attendance = daysAttended;
- }
- public double calculateAverageGrade() {
- if (grades.isEmpty()) return 0.0;
- int total = 0;
- for (int grade : grades) {
- total += grade;
- }
- return total / (double) grades.size();
- }
- public String getPerformance() {
- double average = calculateAverageGrade();
- if (average >= 90) return "Excellent";
- if (average >= 75) return "Good";
- if (average >= 50) return "Average";
- return "Needs Improvement";
- }
- @Override
- public String toString() {
- return "Student{name='" + name + "', age=" + age + ", grades=" + grades + ", attendance=" + attendance + "}";
- }
- }
- private Map<Integer, Student> studentMap; // Keyed by student ID
- public StudentManagementSystem() {
- studentMap = new HashMap<>();
- }
- public void addStudent(int studentId, String name, int age) {
- if (studentMap.containsKey(studentId)) {
- System.out.println("Student ID already exists.");
- } else {
- studentMap.put(studentId, new Student(name, age));
- }
- }
- public void addGradeToStudent(int studentId, int grade) {
- Student student = studentMap.get(studentId);
- if (student != null) {
- student.addGrade(grade);
- } else {
- System.out.println("Student not found.");
- }
- }
- public void updateStudentAttendance(int studentId, int daysAttended) {
- Student student = studentMap.get(studentId);
- if (student != null) {
- student.updateAttendance(daysAttended);
- } else {
- System.out.println("Student not found.");
- }
- }
- public void printStudentDetails(int studentId) {
- Student student = studentMap.get(studentId);
- if (student != null) {
- System.out.println(student);
- System.out.println("Average Grade: " + student.calculateAverageGrade());
- System.out.println("Performance: " + student.getPerformance());
- } else {
- System.out.println("Student not found.");
- }
- }
- public void printClassReport() {
- for (Map.Entry<Integer, Student> entry : studentMap.entrySet()) {
- Student student = entry.getValue();
- System.out.println("ID: " + entry.getKey() + " | Name: " + student.name + " | Average Grade: " + student.calculateAverageGrade() + " | Attendance: " + student.attendance + " | Performance: " + student.getPerformance());
- }
- }
- public static void main(String[] args) {
- StudentManagementSystem sms = new StudentManagementSystem();
- // Adding students
- sms.addStudent(1, "John Doe", 20);
- sms.addStudent(2, "Jane Smith", 21);
- // Adding grades
- sms.addGradeToStudent(1, 85);
- sms.addGradeToStudent(1, 90);
- sms.addGradeToStudent(2, 78);
- sms.addGradeToStudent(2, 82);
- // Updating attendance
- sms.updateStudentAttendance(1, 20);
- sms.updateStudentAttendance(2, 18);
- // Printing student details
- sms.printStudentDetails(1);
- sms.printStudentDetails(2);
- // Printing class report
- sms.printClassReport();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement