Hello,
So for my assignment I had to create a program that would find the sum and then average of a list of numbers. I managed to do that part fine, but I was also meant to use double data type for my variables which I think I may have done right too? But for some reason in my output for my answer Im still getting a whole number, when I should be gettimg a decimal number. Does anyone see a mistake im making?
#include <iostream>
using namespace std;
int main()
{
float average;
int const FIVE = 5;
Double a = 24.,
Double b = 28.,
Double c = 32.,
Double d = 37.,
Double e = 55.,
Double sum = a + b + c + d + e;
Double average = (Double sum / FIVE);
cout << endl << endl;
cout << "The average is " << average;
cout << endl << endl;
return 0;
}
I’ve edited your post for readability. When you enter a code block into a forum post, please precede it with a separate line of three backticks and follow it with a separate line of three backticks to make it easier to read.
You can also use the “preformatted text” tool in the editor (</>) to add backticks around text.
Could be, but I thought promotions went the other way. It’s been a minute since I wrote C++ code though. Frankly I’m surprised the code compiles at all given the repeat declarations of sum and average.
Recommend removing the duplicate declarations. Making the FIVE constant double precision certainly won’t hurt too.
Yeah, you are right about promotion going the other way. I’m also confused about this compiling.
These lines are super wonky. Makes me thing there is some hidden macro definition of Double? But as written this should fail to compile for at least 4 different reasons.