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

C++ Code. I messed up some where in the code. I need it tell me how many people

ID: 3685232 • Letter: C

Question

C++ Code. I messed up some where in the code. I need it tell me how many people got the highest grade and also the lowest grade. Example: (# of people with the highest grade- 3) I can't seem to get it to count the maxcount and mincount corretly though.

#include< iostream >
using std::cin; using std::cout; using std::endl;
int main()
{
int value, sum, array[100];
float average;
int count, i, less70 = 0, maxcount = 0, mincount = 0, minimum=0, maximum=0;
i = 0;
// initialise
sum = 0;
count = 0;
cout << "Enter a value: ";
cin >> value;

while (value >= 0)
{
   // process value
   sum += value;
   count++;
   if (value>0)
   {
       array[i] = value;
       i++;
   }
   if (value < 70)
   {
       less70++;
   }
   if (value > maximum)
   {
       maximum = value;
   }
   if (value < maximum)
   {
       maximum = value;
   }
   if (value == maximum)
   {
       maxcount++;
   }
   if (value == minimum)
   {
       mincount++;
   }
   // get next value
   cout << "Enter a value: ";
   cin >> value;
}
if (count == 0)
cout << "No data entry" << endl;
else
{
   average = sum / count;
   minimum = maximum = array[0];
   for (int j = 1; j<i; j++){
       if (array[j] > maximum)
           maximum = array[j];
       else if (array[j] < minimum)
           minimum = array[j];
   }


   cout << "Average is " << average << endl;
   cout << "Lowest Grade is " << minimum << endl;
   cout << "Highest Grade is " << maximum << endl;
   cout << "# less than 70 is " << less70 << endl;
   cout << "# of Highest Grade is " << maxcount << endl;
   cout << "# of lowest Grade is " << mincount << endl;
}

return 0;
}

Explanation / Answer

Here how you are calculating the mincount, maxcount depending on which range?

#include< iostream >
using std::cin; using std::cout; using std::endl;
int main()
{
int value, sum, array[100];
float average;
int count, i, less70 = 0, maxcount = 0, mincount = 0, minimum=0, maximum=0;
i = 0;
// initialise
sum = 0;
count = 0;
cout << "Enter a value: ";
cin >> value;
while (value >= 0)
{
// process value
sum += value;
count++;
if (value>0)
{
array[i] = value;
i++;
}
if (value < 70)
{
less70++;
}

/*if (value > maximum)
   {
       maximum = value;
   }

if (value == maximum)
   {
       maxcount++;
   }

*/

/*this condition always will not be occured, since minimum always hold zero value
   if (value < minimum) this condition always will not be occured
   {
       minimum = value;
   }

   if (value == minimum)
   {
       mincount++;
   }

*/
// get next value
cout << "Enter a value: ";
cin >> value;
}
if (count == 0)
cout << "No data entry" << endl;
else
{
average = sum / count;
minimum = maximum = array[0];
for (int j = 1; j<i; j++){

if (array[j] > maximum)
{
maximum = array[j];
maxcount++; // you should mention a range otherwise it compare consecutive numbers
}
else if (array[j] < minimum)
{
minimum = array[j];
mincount++;  // you should mention a range otherwise it compare consecutive number
}
}

cout << "Average is " << average << endl;
cout << "Lowest Grade is " << minimum << endl;
cout << "Highest Grade is " << maximum << endl;
cout << "# less than 70 is " << less70 << endl;
cout << "# of Highest Grade is " << maxcount << endl;
cout << "# of lowest Grade is " << mincount << endl;
}
return 0;
}