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

Computer Project.

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

Computer Project.

For class x icse
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

A software application for school

result management system


Creating a school result management system in Java involves structuring a program that can
handle student data, manage subjects, record marks, and calculate results. Below is a step-
by-step guide to help you build a basic console-based result management system.

---

1. Plan the Features

Add students and their details (e.g., Name, Roll Number).

Add subjects.

Enter marks for students.

Calculate total marks, percentage, and grade.

Display student results.

---

2. Structure the Classes

Here’s a basic class structure:

Student: Holds student details and marks.

Subject: Represents individual subjects.

ResultManager: Handles operations like adding students, subjects, and calculating results.

Main: The entry point for the program.

---

3. Implementation

Student.java

import java.util.HashMap;

public class Student {

private int rollNumber;


private String name;

private HashMap<String, Integer> marks; // Subject and Marks

public Student(int rollNumber, String name) {

this.rollNumber = rollNumber;

this.name = name;

this.marks = new HashMap<>();

public int getRollNumber() {

return rollNumber;

public String getName() {

return name;

public void addMarks(String subject, int mark) {

marks.put(subject, mark);

public HashMap<String, Integer> getMarks() {

return marks;

public int calculateTotalMarks() {

return marks.values().stream().mapToInt(Integer::intValue).sum();

public double calculatePercentage() {

if (marks.size() == 0) return 0.0;

return (double) calculateTotalMarks() / marks.size();


}

public String calculateGrade() {

double percentage = calculatePercentage();

if (percentage >= 90) return "A";

else if (percentage >= 75) return "B";

else if (percentage >= 50) return "C";

else return "F";

---

ResultManager.java

import java.util.ArrayList;

public class ResultManager {

private ArrayList<Student> students;

private ArrayList<String> subjects;

public ResultManager() {

students = new ArrayList<>();

subjects = new ArrayList<>();

public void addSubject(String subject) {

if (!subjects.contains(subject)) {

subjects.add(subject);

public void addStudent(Student student) {


students.add(student);

public Student findStudentByRollNumber(int rollNumber) {

for (Student student : students) {

if (student.getRollNumber() == rollNumber) {

return student;

return null;

public void displayResults() {

for (Student student : students) {

System.out.println("Roll Number: " + student.getRollNumber());

System.out.println("Name: " + student.getName());

System.out.println("Marks: " + student.getMarks());

System.out.println("Total Marks: " + student.calculateTotalMarks());

System.out.println("Percentage: " + student.calculatePercentage());

System.out.println("Grade: " + student.calculateGrade());

System.out.println("-----------------------");

public ArrayList<String> getSubjects() {

return subjects;

}
---

Main.java

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

ResultManager resultManager = new ResultManager();

Scanner scanner = new Scanner(System.in);

// Adding subjects

System.out.println("Enter number of subjects:");

int subjectCount = scanner.nextInt();

scanner.nextLine(); // Consume newline

for (int i = 0; i < subjectCount; i++) {

System.out.println("Enter subject name:");

resultManager.addSubject(scanner.nextLine());

// Adding students

System.out.println("Enter number of students:");

int studentCount = scanner.nextInt();

scanner.nextLine(); // Consume newline

for (int i = 0; i < studentCount; i++) {

System.out.println("Enter student roll number:");

int rollNumber = scanner.nextInt();

scanner.nextLine(); // Consume newline

System.out.println("Enter student name:");

String name = scanner.nextLine();


Student student = new Student(rollNumber, name);

// Adding marks

for (String subject : resultManager.getSubjects()) {

System.out.println("Enter marks for " + subject + ":");

int marks = scanner.nextInt();

student.addMarks(subject, marks);

resultManager.addStudent(student);

// Display results

System.out.println("\nStudent Results:");

resultManager.displayResults();

scanner.close();

---

4. Run and Test

Compile and run the program.

Add a few subjects and students to test all functionalities.

---

5. Extend the System

To improve, you could:

1. Store data in files or a database for persistence.

2. Create a graphical user interface (GUI) using JavaFX or Swing.

3. Add features like editing student details or marks.

You might also like