Respuesta :

Question:

Vector testGrades contains NUM_VALS test scores. Write a for loop that sets sumExtra to the total extra credit received. Full credit is 100, so anything over 100 is extra credit. Ex: If testGrades = {101, 83, 107, 90}, then sumExtra = 8, because 1 + 0 + 7 + 0 is 8.

#include <iostream>

#include <vector>

using namespace std;  

int main() {

  const int NUM_VALS = 4;

  vector<int> testGrades(NUM_VALS);

  int i = 0;

  int sumExtra = -9999; // Assign sumExtra with 0 before your for loop  

  testGrades.at(0) = 101;

  testGrades.at(1) = 83;

  testGrades.at(2) = 107;

  testGrades.at(3) = 90;

   /* Your solution goes here  */

  cout << "sumExtra: " << sumExtra << endl;

  return 0;

}

Answer:

Replace /* Your solution goes here  */  with the following lines of code

sumExtra = 0;

do{

if(testGrades.at(i) > 100){

sumExtra = sumExtra + (testGrades.at(i) - 100);

}

i++;

}

while(i<NUM_VALS);

Explanation:

In the complete question posted,  the variables sumExtra and i have already been declared an initialized.

So, the first thing we do in the solution is:

set  sumExtra to 0 using sumExtra = 0;

Then iterate through vector testGrades using i as the iterating variable

Here, I made used of a do while loop and the explanation is as follows:

do{

This line checks if current element of the vector is greater than 100

if(testGrades.at(i) > 100){

If yes, the extra digits above 100 is added to the sumExtra

sumExtra = sumExtra + (testGrades.at(i) - 100);

}

The counter is increased, here

i++;

}

The loop is continued while the iterating variable i is less than NUM_VALS which is 4

while(i<NUM_VALS);

Q&A Education