About Functions and refinement in program
I need to have critical comments about the following piece of code. I am learning to write my own functions in C++. Could someone guide me on how to make this program more refined and how can i make practice on making my own functions:
//Function declaration to calculate percentage
float CalcPerc(float,float);
//Function declaration to calculate GPA
float CalcGPA(float);
//Function declaration to calculate CGPA
float CalcCGPA(float,float,float);
//Function declaration to decide Grade
char CalcGrade(float);
main()
{
float TotMrks,MrksObt;
float perc;
float gpa;
float gpa1,gpa2,gpa3;
float cgpa;
char grade;
for (int subj=1;subj<=3;subj++)
{
cout<<"\nPlease enter the total marks and marks obtained in Subject "<<subj;;
cout<<"\nTotal Marks: ";
cin>>TotMrks;
cout<<"Marks Obtained: ";
cin>>MrksObt;
perc = CalcPerc(MrksObt,TotMrks) ;
cout<<"Percentage: "<<perc<<" %"<<"\n";
gpa = CalcGPA(perc);
cout<<"GPA: "<<gpa<<"\n";
switch (subj)
{
case 1:
gpa1=gpa;
break;
case 2:
gpa2=gpa;
break;
default:
gpa3=gpa;
break;
}
}
cgpa = CalcCGPA(gpa1,gpa2,gpa3);
cout<<"\n"<<"CGPA: "<<cgpa<<"\n";
grade = CalcGrade(cgpa);
cout<<"Grade: "<<grade<<"\n";
system("pause");
}
//Function for calculating percentage
float CalcPerc(float MO, float TM)
{
return (MO/TM * 100);
}
//Function for calculating GPA
float CalcGPA(float percentage)
{
return (percentage/100) * 5;
}
//Function for calculating CGPA
float CalcCGPA(float GPA1,float GPA2,float GPA3)
{
return (GPA1 + GPA2 + GPA3)/3;
}
//Function for assigning grade
char CalcGrade(float CGPA)
{
if (CGPA >= 4)
{
return 'A';
}
else if (CGPA >= 3 && CGPA < 4)
{
return 'B';
}
else if (CGPA >= 2 && CGPA < 3)
{
return 'C';
}
else if (CGPA >= 1 && CGPA < 2)
{
return 'D';
}
else if (CGPA < 1)
{
return 'F';
}
}
MAXOOD!
Life is an endless journey towards perfection
__________________
MAXOOD!
Life is an endless journey towards perfection
|