Assistance with debugging C++ Program - Sajha Mobile
SAJHA MOBILE
Assistance with debugging C++ Program
Posts 15 · Viewed 11817 · Go to Last Post
prankster
· Snapshot 40
Like · Likedby · 0
Tested following modified code in http://www.compileonline.com/compile_cpp_online.php

#include
#include
#include
using namespace std;

/* This program computes the score for a dive based on the degree of difficulty
* and five judges scores. The high and low scores are dropped.
*/

/* Function prototypes */
void inputScores(double scores[]);
double addAllScores(double scores[]);
double findLowScore(double scores[]);
double findHighScore(double scores[]);

int main ()
{
double difficulty, sum, lowScore, highScore, score;
double judgeScores[5];

cout << "Please enter the degree of difficulty: ";
cin >> difficulty;

inputScores(judgeScores);

sum = addAllScores(judgeScores);

lowScore = findLowScore(judgeScores);

highScore = findHighScore(judgeScores);

/* subtract out the low and high scores */
sum = sum - lowScore - highScore;

/* multiply by degree of difficulty */
score = sum * difficulty;

cout << "The score for the dive is: " << fixed << setprecision(2) << score << endl;
//system("pause");
}

//****************************************************************
// This function gets the judges scores
//***************************************************************

void inputScores(double scores[])
{
for(int i = 1; i < 5; i++)
{
scores[i] = i;
//cout << "Please enter the score from Judge #" << i + 1 << ": ";
//cin >> scores[i];
}
}

//****************************************************************
//This function determines the sum of the scores input.
//****************************************************************

double addAllScores(double scores[])
{
double total;

//determine lowest score
for (int count = 0; count < 5; count++)
{
total += scores[count];
}
return total;
}

//****************************************************************
//This function determines the lowest score input.
//****************************************************************

double findLowScore(double scores[])
{
double lowest = 99999.0;

//determine lowest score
for (int count = 0; count <= 5; count++)
{
if (lowest > scores[count])
lowest = scores[count];
}
return lowest;
}

//****************************************************************
//This function determines the highest score input.
//****************************************************************

double findHighScore(double scores[])
{
double highest = -1;

//determine lowest score.
for (int count = 0; count < 5; count++)
{
if (highest < scores[count])
highest = scores[count];
}
return highest;
}


Inputs and rest of the debug
Difficulty = 6
Scores[0] = 0
scores[1] = 1
.
.
scores[4] = 4

highest = 4,
lowest = 0,
total = 1+2+3+4 = 10
sum = total - highest - lowest = 10 - 4 - 0 = 6
score =sum * difficult = 6 * 6 = 36
prankster
· Snapshot 63
Like · Liked by · 0
not sure about the error, I don't think it is related to your code, may be you have configured VS wrong.
Change inputScores to,
void inputScores(double scores[])
{
for(int i = 0; i < 5; i++)
{
cout << "Please enter the score from Judge #" << i + 1 << ": ";
cin >> scores[i];
}
}

for inputs.
prankster
· Snapshot 180
Like · Liked by · 0
initialize it to 0 ?
prankster
· Snapshot 218
Like · Liked by · 0
change
count<=5 to count<5 in determine lowest score

Will you code work if all the values are above 99999.0 or all the values are less than -1?
If you want them to work with all the values , assign first score to highest/lowest :)
Debbie Barnard Smith
· Snapshot 1077
Like · Liked by · 0
How did you get it to equal 42.55. I am working on this same program trying to debug it and can't get it to equal 42.55.
Milann Mania
· Snapshot 1209
Like · Liked by · 0
wondering why you using
for(int i = 1; i < 5; i++) and
for(int i = 0; i < 5; i++) and
for(int i = 0; i <= 5; i++) ....they all should same ideally 0 to < 5 if size is 5
instead of hard code 5, just use scores.size(),,,,,,done
Debbie Barnard Smith
· Snapshot 1300
Like · Liked by · 0
Here is my program. It should equal 42.55. It's not dropping the lowest score.

#include
#include
#include
using namespace std;

/* This program computes the score for a dive based on the degree of difficulty
* and five judges scores. The high and low scores are dropped.
*/

/* Function prototypes */
void inputScores(double scores[]);
double addAllScores(double scores[]);
double findLowScore(double scores[]);
double findHighScore(double scores[]);

int main()
{
double difficulty, sum, lowScore, highScore, score;
double judgeScores[5];

cout << "Please enter the degree of difficulty: ";
cin >> difficulty;

inputScores(judgeScores);

sum = addAllScores(judgeScores);

lowScore = findLowScore(judgeScores);

highScore = findHighScore(judgeScores);

/* subtract out the low and high scores */
sum = sum - lowScore - highScore;

/* multiply by degree of difficulty */
score = sum * difficulty;

cout << "The score for the dive is: " << fixed << setprecision(2) << score << endl;
system("pause");
}

//****************************************************************
// This function gets the judges scores
//***************************************************************

void inputScores(double scores[])
{
for (int i = 0; i < 5; i++)
{
cout << "Please enter the score from Judge #" << i + 1 << ": ";
cin >> scores[i];
}
}

//****************************************************************
//This function determines the sum of the scores input.
//****************************************************************

double addAllScores(double scores[])
{
double total = 0;

//determine sum of score
for (int count = 0; count < 5; count++)
{
total += scores[count];
}
return total;
}

//****************************************************************
//This function determines the lowest score input.
//****************************************************************

double findLowScore(double scores[])
{
double lowest = 0;

//determine lowest score
for (int count = 0; count < 5; count++)
{
if (lowest < scores[count])
lowest = scores[count];
}
return lowest;
}

//****************************************************************
//This function determines the highest score input.
//****************************************************************

double findHighScore(double scores[])
{
double highest = 0;

//determine highest score.
for (int count = 0; count < 5; count++)
{
if (highest > scores[count])
highest = scores[count];
}
return highest;
}
Milann Mania
· Snapshot 1359
Like · Liked by · 0
void inputScores(double scores[]) should return double[] values......array is not passed by reference ..so change function as:
double[] inputScores(double scores[])
{
for (int i = 0; i < 5; i++)
{
cout << "Please enter the score from Judge #" << i + 1 << ": ";
cin >> scores[i];
}
return scores;
}

and judgeScores = inputScores(judgeScores); .and call other methods....will work
Debbie Barnard Smith
· Snapshot 1529
Like · Liked by · 0
It is still not working.
Junior Chavez
· Snapshot 1710
Like · Liked by · 0
Debbie did you ever get this to work
Debbie Barnard Smith
· Snapshot 1712
Like · Liked by · 0
I think so. I changed this part:
double findHighScore(double scores[])
{
double highest = 0;

to:

double findHighScore(double scores[])
{
double highest = 99999.0;
Junior Chavez
· Snapshot 1725
Like · Liked by · 0
Still unable to get it to work.. can you attach your whole program to compare to what I have
Debbie Barnard Smith
· Snapshot 1731
Like · Liked by · 0
This is what I have, let me know if it worked for you.

#include
#include
#include
using namespace std;

/* This program computes the score for a dive based on the degree of difficulty
* and five judges scores. The high and low scores are dropped.
*/

/* Function prototypes */
void inputScores(double scores[]);
double addAllScores(double scores[]);
double findLowScore(double scores[]);
double findHighScore(double scores[]);

int main()
{
double difficulty, sum, lowScore, highScore, score;
double judgeScores[5];

cout << "Please enter the degree of difficulty: ";
cin >> difficulty;

inputScores(judgeScores);

sum = addAllScores(judgeScores);

lowScore = findLowScore(judgeScores);

highScore = findHighScore(judgeScores);



/* subtract out the low and high scores */
sum = sum - lowScore - highScore;

/* multiply by degree of difficulty */
score = sum * difficulty;

cout << "The score for the dive is: " << fixed << setprecision(2) << score << endl;
system("pause");
}

//****************************************************************
// This function gets the judges scores
//***************************************************************

void inputScores(double scores[])
{

for (int i = 0; i < 5; i++)
{
cout << "Please enter the score from Judge #" << i + 1 << ": ";
cin >> scores[i];
}

}


//****************************************************************
//This function determines the sum of the scores input.
//****************************************************************

double addAllScores(double scores[])
{
double total = 0;

//determine sum of score
for (int count = 0; count < 5; count++)
{
total += scores[count];
}
return total;
}

//****************************************************************
//This function determines the lowest score input.
//****************************************************************

double findLowScore(double scores[])
{
double lowest = 0;

//determine lowest score
for (int count = 0; count < 5; count++)
{
if (lowest < scores[count])
lowest = scores[count];
}
return lowest;
}

//****************************************************************
//This function determines the highest score input.
//****************************************************************

double findHighScore(double scores[])
{
double highest = 99999.0;

//determine highest score.
for (int count = 0; count < 5; count++)
{
if (highest > scores[count])
highest = scores[count];
}
return highest;
}
Junior Chavez
· Snapshot 1743
Like · Liked by · 0
You are a lifesaver thank you so much..can we share emails in case I need some more help lol
Debbie Barnard Smith
· Snapshot 1769
Like · Liked by · 0
I'm sending you a message with my email on Facebook. I found your page.
Please log in to reply to this post

You can also log in using your Facebook
View in Desktop
What people are reading
You might like these other discussions...
· Posts 4 · Viewed 290
· Posts 6 · Viewed 417
· Posts 8 · Viewed 1265 · Likes 3
· Posts 9 · Viewed 511
· Posts 1 · Viewed 183
· Posts 12 · Viewed 948 · Likes 1
· Posts 1 · Viewed 79
· Posts 1 · Viewed 91
· Posts 9 · Viewed 1093
· Posts 1 · Viewed 128



Your Banner Here
Travel Partners
Travel House Nepal