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

This lab is a basic application of the for loop. Copy the code below into your c

ID: 3846523 • Letter: T

Question

This lab is a basic application of the for loop.

Copy the code below into your compiler

Why is the typecast operator needed to compute the mean in the statement mean = static_cast(float)(total)/value;? What do you think will happen if it is removed? Modify the code and try it. Record what happens. Make sure that you try both even and odd cases. Now put static_cast<float> total back in the program..

What happens if you enter a float such as 2.99 instead of an integer for value? Try it and record the results.

Modify the code so that it computes the mean of the consecutive positive integers n, n+1, n+2, . . . , m, where the user chooses n and m. For example, if the user picks 3 and 9, then the program should find the mean of 3, 4, 5, 6, 7, 8, and 9, which is 6.

Submit the revised LastFirst_lab53.cpp

The following is the code to be used:

// This program has the user input a number n and then finds the

// mean of the first n positive integers

// PLACE YOUR NAME HERE

#include <iostream>

using namespace std;

int main()

{

int value; // value is some positive number n

int total = 0; // total holds the sum of the first n positive numbers

int number; // the amount of numbers

float mean; // the average of the first n positive numbers

cout << "Please enter a positive integer" << endl;

cin >> value;

if (value > 0)

{

     for (number = 1; number <= value; number++)

          {

                total = total + number;

          } // curly braces are optional since there is only one statement

mean = float(total) / value; // note the use of the typecast // operator here

cout << "The mean average of the first " << value << " positive integers is " << mean << endl;

}

else

     cout << "Invalid input - integer must be positive" << endl;

return 0;

}

Explanation / Answer

Why is the typecast operator needed to compute the mean in the statement mean = static_cast(float)(total)/value;?

Answer:

if we dont use type casting here then we will get ont integer values by the expression total / value. Becuase total and value variables are int type of values. So while we perform division on these two variables it will return integer value. So we may loose of decimal values. That is why we have to convert the any one of the value either total or value as float. so that we will get decimal value too.;

when we use type casting output is

sh-4.2$ main                                                                                                                                                                                         

Please enter a positive integer                                                                                                                                                                      

6                                                                                                                                                                                                    

The mean average of the first 6 positive integers is 3.5

When we dont use type casting and output is

sh-4.2$ main                                                                                                                                                                                         

Please enter a positive integer                                                                                                                                                                      

6                                                                                                                                                                                                    

The mean average of the first 6 positive integers is 3

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote