dotfiles/.config/Code/User/History/55863ed9/HC5H.cpp
RafayAhmad7548 ab03d5f10c test
2024-06-16 18:53:25 +05:00

117 lines
No EOL
2.7 KiB
C++

/*
Rafay Ahmad
23I-2526
*/
#include <iostream>
using namespace std;
class Student{
int stdID;
string name;
string *courseCodes;
int numOfCourses;
int *courseGrades;
float gpa;
public:
int getStdID(){
return stdID;
}
string getName(){
return name;
}
string getCourseCodes(int i){
return courseCodes[i];
}
int getNumOfCourses(){
return numOfCourses;
}
int getCourseGrade(int i){
return courseGrades[i];
}
float getGPA(){
return gpa;
}
void setStdID(int stdID){
this->stdID = stdID;
}
void setName(string name){
this->name = name;
}
void setCourseGrade(string courseCode, int grade){
for(int i=0;i<numOfCourses;i++){
if(courseCodes[i] == courseCode){
courseGrades[i] = grade;
break;
}
}
}
void addCourse(string courseCode, int grade){
string* newCourseCodes = new string[numOfCourses + 1];
int* newCourseGrades = new int[numOfCourses + 1];
for(int i = 0; i < numOfCourses; i++){
newCourseCodes[i] = courseCodes[i];
newCourseGrades[i] = courseGrades[i];
}
newCourseCodes[numOfCourses] = courseCode;
newCourseGrades[numOfCourses] = grade;
delete[] courseCodes;
delete[] courseGrades;
courseCodes = newCourseCodes;
courseGrades = newCourseGrades;
numOfCourses++;
}
void calcGPA(){
int gpa = 0;
for(int i=0;i<this->numOfCourses;i++) gpa += courseGrades[i]/100 * 4;
gpa /= numOfCourses;
this->gpa = gpa;
}
};
Student getStudentAt(Student students[], int index){
return students[index];
}
float calcClassGPA(Student students[], int numStudents){
int sum = 0;
for(int i=0;i<numStudents;i++) sum += students[i].getGPA();
return sum/numStudents;
}
int getMinGPA(Student students[], int numStudents){
int min = students[0].getGPA();
for(int i=1;i<numStudents;i++) if(students[i].getGPA()<min) min = students[i].getGPA();
return min;
}
void printStudentRecord(Student student){
cout<<"ID: "<<student.getStdID()<<endl;
cout<<"Name: "<<student.getName()<<endl;
for(int i=0;i<student.getNumOfCourses();i++) cout<<"Course Code"<<student.getCourseCodes(i)<<" Grade: "<<student.getCourseGrade(i)<<endl;
cout<<"No of Course: "<<student.getNumOfCourses()<<endl;
cout<<"GPA: "<<student.getGPA()<<endl;
}
void printAllStudentRecords(Student students[], int numStudents){
for(int i=0;i<numStudents;i++){
printStudentRecord(students[i]);
cout<<endl;
}
}
int main(){
return 0;
}