d2jsp
Log InRegister
d2jsp Forums > Off-Topic > Computers & IT > Programming & Development > Having Issues With Stringing Two Different Command > C++ Visual Studio
Add Reply New Topic New Poll
Member
Posts: 644
Joined: Feb 20 2015
Gold: 79.00
Aug 21 2019 07:10pm
int main()
{
// Declaring variables for project

double Grade1, Grade2, Grade3, Grade4, average;

cout << "Enter Grade 1: ";
cin >> Grade1;

cout << "Enter Grade2: ";
cin >> Grade2;

cout << "Enter Grade3: ";
cin >> Grade3;

cout << "Enter Grade4: ";
cin >> Grade4;

cout << "Average grade: " << (Grade1 + Grade2 + Grade3 + Grade4) / 4;
cin >> average;

float average;
cout << "input average grade: " << (Grade1 + Grade2 + Grade3 + Grade4) / 4;


if (average >= 90)
cout << " Grade is an A" << endl;

if (average >= 80)
cout << "Grade is a B" << endl;

if (average >= 70)
cout << "Grade is a C" << endl;

if (average >= 60)
cout << "Grade is a D" << endl;

if (average < 60)
cout << "Grade is an F" << endl;


system ("pause");

return 0;

}

I get the averages everytime, I'm trying to translate the number average to a letter but I'm having issues stringing the commands together. Any help would be greatly appreciated.
Member
Posts: 1,039
Joined: Jul 8 2008
Gold: 1,939.50
Aug 21 2019 07:47pm
You're calculating the average twice, but you're also setting the average which I think you probably want to remove. So...

I would replace

Code

cout << "Average grade: " << (Grade1 + Grade2 + Grade3 + Grade4) / 4;
cin >> average;

float average;
cout << "input average grade: " << (Grade1 + Grade2 + Grade3 + Grade4) / 4;


with
Code

average = (Grade1 + Grade2 + Grade3 + Grade4) / 4; // Calculate and set the variable.
cout << "Average grade: " << average << endl; // Use the variable.
// cin >> average; // Remove this line because average isn't an input. It is calculated by your program.

// float average; // Remove this line. You already declared it above.
cout << "input average grade: " << average << endl; // use average variable again
Member
Posts: 1,039
Joined: Jul 8 2008
Gold: 1,939.50
Aug 21 2019 07:51pm
Oh I get what your problem is. You also need to change your if to an else/if chain or a switch or return or something.
try
Code
if (average >= 90)
cout << " Grade is an A" << endl;

else if (average >= 80)
cout << "Grade is a B" << endl;

else if (average >= 70)
cout << "Grade is a C" << endl;

else if (average >= 60)
cout << "Grade is a D" << endl;

else if (average < 60)
cout << "Grade is an F" << endl;


Member
Posts: 644
Joined: Feb 20 2015
Gold: 79.00
Aug 21 2019 08:07pm
Yall are heroes, I did both and it worked!! Thank you
Member
Posts: 1,039
Joined: Jul 8 2008
Gold: 1,939.50
Aug 22 2019 05:22pm
I mean it was just me twice, but sure. You're welcome. Lol
Trade Moderator
Posts: 26,725
Joined: Dec 20 2005
Gold: 82,500.00
Trader: Trusted
Aug 25 2019 06:08am
Quote (slapyourDog @ Aug 22 2019 04:10am)
int main()
{
// Declaring variables for project

double Grade1, Grade2, Grade3, Grade4, average;

cout << "Enter Grade 1: ";
cin >> Grade1;

cout << "Enter Grade2: ";
cin >> Grade2;

cout << "Enter Grade3: ";
cin >> Grade3;

cout << "Enter Grade4: ";
cin >> Grade4;

cout << "Average grade: " << (Grade1 + Grade2 + Grade3 + Grade4) / 4;
cin >> average;

float average;
cout << "input average grade: " << (Grade1 + Grade2 + Grade3 + Grade4) / 4;


if (average >= 90)
cout << " Grade is an A" << endl;

if (average >= 80)
cout << "Grade is a B" << endl;

if (average >= 70)
cout << "Grade is a C" << endl;

if (average >= 60)
cout << "Grade is a D" << endl;

if (average < 60)
cout << "Grade is an F" << endl;


system ("pause");

return 0;

}

I get the averages everytime, I'm trying to translate the number average to a letter but I'm having issues stringing the commands together. Any help would be greatly appreciated.


In cases of so many if's its better do use a switch case and handling each case with the output you want.
Don't forget to add break after each case.
Member
Posts: 30,945
Joined: Apr 13 2008
Gold: 11,996.69
Sep 1 2019 05:10pm

syntax would look like this for a switch:

switch (average) {
case > 90:
cout << “Grade is a A” << endl;
break;
case > 80 && case <= 90:
...
}
Go Back To Programming & Development Topic List
Add Reply New Topic New Poll