Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

CAN YOU PLEASE WRITE A PSEUDOCODE FOR THIS CODE AND ADD COMMENT IN THIS PROGRAM

ID: 3699747 • Letter: C

Question

CAN YOU PLEASE WRITE A PSEUDOCODE FOR THIS CODE AND ADD COMMENT IN THIS PROGRAM PLEASE>>>>

//header function

#include <iostream>

#include <cctype>

using namespace std;

//prototype function

string toUpperCase(string name);

int countBelow60(double grade[], int n);

string calulateLetterGrade(double grade);

void inputGrades(string type, double grades[], int &n);

double calculateGradePerc(double grades[], int n, int multiplier);

int main()

{

double grades[10];

int n;

double overallScore=0;

string letterGrade;

string name;

cout<<"Enter name:";

getline(cin, name);

inputGrades("homework",grades,n);

overallScore += calculateGradePerc(grades,n,10);

int progMultiplier=50;

if (n>0)

{progMultiplier=40;

inputGrades("program",grades,n);

overallScore +=calculateGradePerc(grades,n,progMultiplier);

inputGrades("quiz",grades,n);

overallScore += calculateGradePerc(grades, n, 10);

inputGrades("exam",grades, n);

overallScore += calculateGradePerc(grades, n, 40);

}

if (countBelow60(grades,n)>2)

letterGrade = "F";

else

letterGrade =calulateLetterGrade(overallScore);

name= toUpperCase(name);

cout<<"Result: "<<name<<" "<<overallScore<<" "<<letterGrade<<endl;

}

void inputGrades(string type, double grades[], int &n)

{

double score;

n=0;

while(true)

{

cout<<"enter"<<type<<"grade(enter -1 when done):";

cin>>score;

if (score == -1)

break;

grades[n++]=score;

}}

double calculateGradePerc(double grades[], int n, int multiplier)

{double sum =0;

double avg=0;

for(int i=0; i<n; i++)

sum +=grades[i];

if (n !=0)

{avg =(sum/n)/100.0;

avg *= multiplier;

}

return avg;}

string calulateLetterGrade(double grade)

{

if (grade >=93 && grade<=100)

return "A";

else if (grade>=90 && grade<=92.9)

return "A-";

else if (grade>=85 && grade<=89.9)

return "B+";

else if (grade>=82 && grade<=84.9)

return "B";

else if (grade>=80 && grade<=81.9)

return "B-";

else if (grade>=76 && grade<=79.9)

return "C+";

else if (grade>=72 && grade<=75.9)

return "C";

else if (grade>=69.5 && grade<=71.9)

return "C-";

else if (grade>=68 && grade<=69.5)

return "D+";

else if (grade>=65 && grade<=67.9)

return "D";

else if (grade>=60 && grade<=64.9)

return "D-";

else

return "F";

}

int countBelow60(double grade[], int n)

{

int count =0;

for(int i=0; i<n; i++)

{if(grade[i]<60)

count++;

}

return count;

}

string toUpperCase(string name)

{string s="";

for(double i=0; i<name.length(); i++)

s +=toupper(name[i]);

return s;

}

Explanation / Answer

//header function

#include <iostream>

#include <cctype>

using namespace std;

//prototype function

string toUpperCase(string name);

int countBelow60(double grade[], int n);

string calulateLetterGrade(double grade);

void inputGrades(string type, double grades[], int &n);

double calculateGradePerc(double grades[], int n, int multiplier);

int main()

{

double grades[10];

int n;

double overallScore=0;

string letterGrade;

string name;

cout<<"Enter name:";

getline(cin, name); //prompt string

inputGrades("homework",grades,n); //calls function

overallScore += calculateGradePerc(grades,n,10); //calls function and adds the return value to overallScore

int progMultiplier=50;

if (n>0)

{progMultiplier=40;

inputGrades("program",grades,n); //calls function

overallScore +=calculateGradePerc(grades,n,progMultiplier); //calls function and adds the return value to overallScore

inputGrades("quiz",grades,n); //calls function

overallScore += calculateGradePerc(grades, n, 10); //calls function and adds the return value to overallScore

inputGrades("exam",grades, n); //calls function

overallScore += calculateGradePerc(grades, n, 40); //calls function and adds the return value to overallScore

}

if (countBelow60(grades,n)>2)

letterGrade = "F";

else

letterGrade =calulateLetterGrade(overallScore); //calls function and adds the return value to letterGrade

name= toUpperCase(name); //calls function and adds the return value to name

cout<<"Result: "<<name<<" "<<overallScore<<" "<<letterGrade<<endl;

}

void inputGrades(string type, double grades[], int &n)

{

double score;

n=0;

while(true) //infinite loop

{

cout<<"enter"<<type<<"grade(enter -1 when done):";

cin>>score; //prompt input

if (score == -1) //if score is -1 then break infinite loop

break;

grades[n++]=score; //store all scores into array

}}

double calculateGradePerc(double grades[], int n, int multiplier)

{double sum =0;

double avg=0;

for(int i=0; i<n; i++) //for loop to iterate till the end of grades array

sum +=grades[i]; //summation of all grades

if (n !=0)

{avg =(sum/n)/100.0; //find the average percentage

avg *= multiplier; //resultant average multiples with multiplier

}

return avg;} //return average

string calulateLetterGrade(double grade) //returns grade according to score

{

if (grade >=93 && grade<=100)

return "A";

else if (grade>=90 && grade<=92.9)

return "A-";

else if (grade>=85 && grade<=89.9)

return "B+";

else if (grade>=82 && grade<=84.9)

return "B";

else if (grade>=80 && grade<=81.9)

return "B-";

else if (grade>=76 && grade<=79.9)

return "C+";

else if (grade>=72 && grade<=75.9)

return "C";

else if (grade>=69.5 && grade<=71.9)

return "C-";

else if (grade>=68 && grade<=69.5)

return "D+";

else if (grade>=65 && grade<=67.9)

return "D";

else if (grade>=60 && grade<=64.9)

return "D-";

else

return "F";

}

int countBelow60(double grade[], int n) //counts all the grades which is less than 60

{

int count =0;

for(int i=0; i<n; i++)

{if(grade[i]<60)

count++;

}

return count;

}

string toUpperCase(string name) //convert name into uppercase

{string s="";

for(double i=0; i<name.length(); i++)

s +=toupper(name[i]);

return s;

}

PSEUDOCODE:

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote