total calculation of cgpa

label Programming
account_circle Unassigned
schedule 1 Hour
account_balance_wallet $5

hidden

use c++ program to calculate the total cgpa of a student doing 40 courses 

Jul 31st, 2013
#include<iostream.h> // for inpit and output
#include<string.h> // for string nama...
using namespace std; // for name space..

struct student // declare struct
{
string name,no_matric;
string sub_code[10],sub_name[10],sub_grade[10];
float credit_hour[10];
}student1;

main()
{
int credit_hours[10];
int sem,total_subject; //'b', 'a',total_credit_hours and total_point
//are removed
float value[10],gpa[10],get_point[10];
float cgpa;
float total_point_sem = 0; //Initialise value
int total_credit_hours_sem = 0; //Initialise value
cin.ignore();

cout << "\t\ ================ ";
cout << "\n\t\ STUDENT'S REKOD " << endl;
cout << "\t\ ================ " << endl;

cout << "\n ENTER STUDENT'S NAME : "; //Enter student's name
getline(cin,student1.name);
cout << " ENTER STUDENT'S MATRIC NUMBER : "; //Enter student's matric number
getline(cin,student1.no_matric);
cout << " ENTER TOTAL SEM TAKEN :"; //Total semester taken by the student
cin >> sem;

for(int a = 0; a< sem ; a++) //'a' declared as int in for()[newly added]
{
int b; //newly added line,'b' choose to add it here because, if not, error will be occured : 'b' for gpa[b] will become undefined...

int total_credit_hours = 0; //newly added
float total_point = 0; //newly added
cout << "\n ENTER SUBJECT TAKEN FOR SEM : " << a+1 << ":"; //Enter total number of subject taken for each sem
cin >> total_subject;
for(int b = 0; b< total_subject; b++) //loop for the courses
{
cin.ignore();
cout << " ENTER SUBJECT CODE : "; //Enter subject code
getline(cin,student1.sub_code[b]);
cout << " ENTER SUBJECT NAME : "; //Enter subject name
getline(cin,student1.sub_name[b]);
cout << " ENTER SUBJECT'S CREDIT HOUR : "; //Enter credit hours of the subject
cin >> student1.credit_hour[b];
cin.ignore();
cout << " ENTER SUBJECT GRED : "; //Enter grade gained by student for every subject
getline(cin,student1.sub_grade[b]);

if(student1.sub_grade[b]=="A")
value[b]=4;
else if(student1.sub_grade[b]=="A-")
value[b]=3.75;
else if(student1.sub_grade[b]=="B+")
value[b]=3.5;
else if(student1.sub_grade[b]=="B")
value[b]=3;
else if(student1.sub_grade[b]=="B-")
value[b]=2.75;
else if(student1.sub_grade[b]=="C+")
value[b]=2.5;
else if(student1.sub_grade[b]=="C")
value[b]=2;
else if(student1.sub_grade[b]=="C-")
value[b]=1.75;
else if(student1.sub_grade[b]== "D+")
value[b]=1.5;
else if(student1.sub_grade[b]=="D")
value[b]=1;
else
value[b]=0;

get_point[b] = student1.credit_hour[b] * value[b]; //multiply of credit hours and grade get for each subject
total_credit_hours +=student1.credit_hour[b]; //total cerdit hours for a sem
total_point += get_point[b]; //total points(multiple of credits hours and grade)get for a sem
}

gpa[b] = total_point / total_credit_hours; //calculate GPA for each sem

total_point_sem += total_point; //Total points(multiple of grade and credit hours) get for all semester

total_credit_hours_sem += total_credit_hours; //credits hour get for all semester
}

cgpa = total_point_sem / total_credit_hours_sem; //calculate CGPA

cout << "\n =================================================== ";
cout <<"\n NAME : " << student1.name << endl; //display name of student
cout <<" NO MATRIC : "<< student1.no_matric << endl;
for(int a = 0; a< sem ; a++) //Declaration of 'a' as int in for()
{
cout <<" SUBJECT CODE \t" << " SUBJECT NAME \t" << " SUBJECT CREDIT HOURS " <<endl;
for(int b=0; b<total_subject; b++) //Declaration of 'b' as int in for()
{
cout << " " << student1.sub_code[b] << " : " << student1.sub_name[b]<< " : " << student1.credit_hour[b] << endl;
}
cout << " GPA" <<a+1<< " : " <<gpa[a] << endl;
}
cout << " CGPA : "<<cgpa<<endl;

cout << "\n =================================================== ";

}
Aug 1st, 2013

Studypool's Notebank makes it easy to buy and sell old notes, study guides, reviews, etc.
Click to visit
The Notebank
hidden
...
Jul 31st, 2013
...
Jul 31st, 2013
Jun 23rd, 2017
check_circle
Mark as Final Answer
check_circle
Unmark as Final Answer
check_circle
Final Answer

Secure Information

Content will be erased after question is completed.

check_circle
Final Answer