Subject: About Functions and refinement in program
Posted By: code_lover Post Date: 4/23/2008 7:19:37 AM
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


Go to topic 70799

Return to index page 1