0% found this document useful (0 votes)
53 views

Oop MP

Uploaded by

ridashaikh215
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
53 views

Oop MP

Uploaded by

ridashaikh215
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 13

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION, MUMBAI

A
MICRO PROJECT
REPORT ON

“AGE CALCULATOR”
Subject Name: GUI Application Development using VB.Net
Subject Code: 22034

SUBMITTED BY

1. Abdul Khalique Enrolment No. 23612410190


2. Md Motasim Iqbal Enrolment No. 2217260079
3. Md Tabrez Alam Enrolment No. 2217260064
4. Hamid Ansari Enrolment No. 2217260042

GUIDED BY
Mr. Haseebuddin Khan

Al Jamia Mohammediyah Education Society’s


MAULANA MUKHTAR AHMAD NADVI TECHNICAL
CAMPUS
DEPARTMENT OF COMPUTER ENGINEERING
Academic Year 2023-24
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION, MUMBAI

CERTIFICATE
This is to certify that
Mr.

Abdul Khalique Seat No: 525557


Md Motasim Iqbal Seat No: 525528
Md Tabrez Alam Seat No: 525519
Hamid Ansari Seat No: 525512
Of 4th Semester of Diploma in Computer Engineering of Institute,
Maulana Mukhtar Ahmad Nadvi Technical Campus, Malegaon.
(Code: 1726) Course of GAD [22034] for the Academic Year 2023-
24 as prescribed in the Curriculum.

Place: Malegaon Date: 05-04-2024

Subject In-charge HOD Principal

Mr. Haseebuddin Khan Prof. Rasheed Noor Dr. Md. Azhar


DEPARTMENT OF COMPUTER ENGINEERING

VISION

To build strong research and learning environment producing globally


competent professionals and innovators who will contribute to the
betterment of the society.

MISSION
• To create and sustain an academic environment Conducive to the
highest level of research and teaching.
• To provide state-of-the-art laboratories which will be up to date
with the new developments in the area of computer engineering.
• To organize competitive event, industry interactions and global
collaborations in view of providing a nurturing environment for
students to prepare for a successful career and the ability to tackle
lifelong challenges in global industrial needs.
• To educate students to be socially and ethically responsible citizens
I view of national and global development.
INDEX

Sr. No Topic
Page
No

1 INTRODUCTION 1

2 THEORY CONCEPTS 2-3

3 ADVANTAGES 4

4 DISADVANTAGES 5

5 SOURCE CODE 6

6 OUTPUT 7

7 CONCLUSION 8
INTRODUCTION

The Student Grading System is a software application designed to calculate student grades based
on marks obtained in five subjects. This system aims to simplify the process of grading students
and provide accurate results.

Objective:

The primary objective of this project is to develop a user-friendly system that:

1. Accepts student data (name, roll number)


2. Accepts marks for five subjects (English, Mathematics, Science, History, Computer Science)
3. Calculates percentage
4. Assigns grade based on percentage
5. Writes records to a file

Scope:

This project will benefit educational institutions by:

1. Automating the grading process


2. Reducing manual errors
3. Providing quick and accurate results
4. Maintaining student records

Limitations:

1. Limited to five subjects


2. No provision for additional subjects or electives
3. No user authentication or authorization

System Overview:

The system will consist of:

1. User interface for inputting student data and marks


2. Calculation module for percentage and grade
3. Display module for showing student records
4. File management module for storing records

1|Page
SYSTEM REQUIREMENTS

Hardware Requirements:

1. Processor: Intel Core i3 or equivalent


2. RAM: 4 GB or more
3. Storage: 500 MB available space
4. Operating System: Windows/Linux/MacOS

Software Requirements:

1. C++ Compiler (e.g., GCC, Clang)


2. Text Editor/IDE (e.g., Visual Studio, Sublime Text)
3. File System (for storing student records)

Functional Requirements:

1. Accept student data (name, roll number)


2. Accept marks for 5 subjects (English, Mathematics, Science, History, Computer Science)
3. Calculate percentage
4. Assign grade based on percentage
- 90-100%: A
- 80-89%: B
- 70-79%: C
- 60-69%: D
- Below 60%: F
5. Display student record
6. Write record to file (student_records.txt)

Non-Functional Requirements:

1. User-friendly interface
2. Efficient data storage and retrieval
3. Accurate calculations
4. Robust error handling

Assumptions and Dependencies:

1. User will provide valid input.


2. File system will be available for storing records.
3. C++ compiler will support standard libraries.

This page outlines the necessary hardware, software, and functional requirements for the Student
Grading System.

2|Page
SYSTEM DESIGN

The Student Grading System will be designed using object-oriented programming (OOP)
concepts in C++.

Class Diagram:

class Student {
private:
string name;
int rollNumber;
int marks[5];
float percentage;
char grade;

public:
void input();
void calculatePercentage();
void assignGrade();
void display();
void writeFile();
};

System Components:

1. Input Module: Accepts student data and marks.


2. Calculation Module: Calculates percentage and assigns grade.
3. Display Module: Shows student records.
4. File Management Module: Stores records in a file.

3|Page
FUNCTION DESCRIPTION

iostream: Includes input/output streams for reading and writing data to the console.
string: Includes the string class for handling text strings.
Class Definition:
 Student: Represents a student with the following private members:
 name: Stores the student's name as a string.
 marks: An array of 5 integers to store the marks for different subjects.
 totalMarks: Stores the total marks obtained by the student.
 percentage: Stores the calculated percentage of the student.
 grade: Stores the assigned grade based on the percentage.
Public Methods:
 Student(const std::string& name, const int marks[]): Constructor that initializes the name
and marks members, calculates totalMarks, percentage, and grade.
 calculatePercentageAndGrade(): Calculates the percentage based on totalMarks and
assigns the corresponding grade using a grading scale.
 display() const: Displays the student's name, total marks, percentage, and grade to the
console.
Main Function:
Creates an array of 5 Student objects with sample data for their names and marks.
Prints a header "Student Records".
Iterates over the array of students, calling the display() method for each student to print
their details.
Explanation:
 The code defines a Student class to represent individual students with their names,
marks, total marks, percentage, and grade.
 The constructor takes the student's name and an array of 5 marks as input.
 It initializes the name and marks members, calculates the totalMarks by summing the
marks, and then calls calculatePercentageAndGrade() to determine the percentage and
grade.
 The calculatePercentageAndGrade() method calculates the percentage based on the total
marks (assuming each subject is out of 100) and assigns the appropriate grade according
to a grading scale.
 The display() method prints the student's details, including name, total marks,
percentage, and grade.
 In the main function, an array of 5 Student objects is created with sample data.
 The display() method is called for each student to print their information to the console.

SOURCE CODE
4|Page
#include <iostream>
#include <string>

class Student {
private:
std::string name;
int marks[5];
float totalMarks;
float percentage;
char grade; // Use char for grade for better readability and efficiency

public:
void input() {
std::cout << "Enter student name: ";
std::getline(std::cin, name); // Use std::getline to read full names with spaces
totalMarks = 0;

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


std::cout << "Enter marks for subject " << (i + 1) << ": ";
std::cin >> marks[i];
totalMarks += marks[i];
}
calculatePercentageAndGrade();
}

void calculatePercentageAndGrade() {
percentage = (totalMarks / (500.0f)) * 100; // Use 500.0f for floating-point division
if (percentage >= 90) grade = 'A';
else if (percentage >= 80) grade = 'B';
else if (percentage >= 70) grade = 'C';
else if (percentage >= 60) grade = 'D';
else if (percentage >= 50) grade = 'E';
else grade = 'F';
}

void display() const {


std::cout << "Name: " << name
<< ", Total Marks: " << totalMarks
<< ", Percentage: " << percentage << "%"
<< ", Grade: " << grade << "\n";
}
};

int main() {
const int studentCount = 5;
5|Page
Student students[studentCount];

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


std::cout << "Entering details for student " << (i + 1) << ":\n";
students[i].input();
}

std::cout << "\nStudent Records:\n";


for (int i = 0; i < studentCount; ++i) {
students[i].display();
}

return 0;
}

6|Page
OUTPUT

7|Page
CONCLUSION

This Student Grading System effectively manages student data, calculates performance metrics,
and persists the records in a text file. The code demonstrates fundamental object-oriented
programming concepts such as encapsulation, and it includes input validation to ensure data
integrity. Future improvements could include handling more dynamic input (like variable
numbers of subjects), enhancing user experience with GUI, or implementing more detailed
reporting features.
The Student Grading System has been successfully implemented using C++ programming
language. This system:

1. Accepts student data and marks


2. Calculates percentage
3. Assigns grade
4. Displays student record
5. Writes record to file

Objectives Achieved:

1. Simplified grading process


2. Reduced manual errors
3. Provided accurate results
4. Maintained student records

Future Enhancements:

1. Expand to multiple classes/sections


2. Include additional subjects/electives
3. Implement user authentication/authorization
4. Develop graphical user interface

8|Page
REFERENCES
C++ Documentation:
 The official C++ website: cplusplus.com and cppreference.com provide extensive
documentation and examples of C++ features.
Online Coding Platforms:
 Websites like GeeksforGeeks and LeetCode offer tutorials and problems that help
improve programming skills in C++.
Programming Communities:
 Online forums like Stack Overflow where you can ask specific questions and get
answers from experienced programmers.

9|Page

You might also like