Answer:
Here is for loop that sets sumExtra to the total extra credit received. I am writing a program in C++
for(i = 0; i <= testGrades.size() - 1; i++){
if(testGrades.at(i) > 100){
sumExtra = sumExtra + (testGrades.at(i) - 100); } }
Explanation:
The complete program is:
#include <iostream> //to use input output functions
#include <vector> //to use vectors
using namespace std; //to identify objects like cin cout
int main() { //start of main function
const int NUM_VALS = 4; // sets the value of NUM_VALS as a constant to 4
vector<int> testGrades(NUM_VALS); // initialize the vector of int (integer) type
int i = 0; // i is initialzed to 0
int sumExtra = 0; //stores the total extra credit
testGrades.at(0) = 101; //sets 101 at first position in vector
testGrades.at(1) = 83; //sets value 83 at second position
testGrades.at(2) = 107; //sets value 107 at third position
testGrades.at(3) = 90; //sets value 90 at fourth position
for(i = 0; i <= testGrades.size() -1; i++){ //loop iterate through each value of in a vector testGrades
if(testGrades.at(i) > 100){ // if the value in a vector exceeds 100
sumExtra = sumExtra + (testGrades.at(i) - 100); } } //computes total extra credit
cout << "sumExtra: " << sumExtra << endl;} //displays the value of computed total extra credit in output
The loop works as follows:
In the first iteration the value of vector testGrades at(i) is at(0) = 101.
if statement checks if this value/element is greater than 100. This is true as 101 > 100. So sumExtra = sumExtra + (testGrades.at(i) - 100); statement is executed in which 100 is subtracted from that element and the result is added to the sumExtra. sumExtra is initialized to 0 so the value of sumExtra becomes: 0+ 101 - 100= 1 So the value of sumExtra = 1
In the second iteration the value of i = 1 and it is positioned at 2nd value of vector testGrades i.e. 83. Then if statement checks if this value/element is greater than 100. This is false as 83 < 100. So the value of sumExtra = 1
In the third iteration the value of i = 2 and it is positioned at 3rd value of vector testGrades i.e. 107. Then if statement checks if this value/element is greater than 100. This is true as 107 > 100.
sumExtra = sumExtra + (testGrades.at(i) - 100); statement is executed in which 100 is subtracted from that element and the result is added to the sumExtra
sumExtra is 1 so the value of sumExtra becomes: 1+ 107 - 100= 8 So the value of sumExtra = 8
In fourth iteration the value of i = 3 and it is positioned at 4th value of testGrades vector i.e. 90. Then the if statement checks if this element is greater than 100. This is false as 90 < 100. So the value of sumExtra remains 8.
Finally the loop breaks as the value of i becomes 4. So the output is 8.