View Single Post
  #1 (permalink)  
Old April 23rd, 2008, 07:19 AM
code_lover code_lover is offline
Authorized User
 
Join Date: Jan 2007
Posts: 46
Thanks: 2
Thanked 1 Time in 1 Post
Default 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
Reply With Quote