澄清一下,这是一个课堂实验室。我现在正在学习所有的基础知识。我试图弄清楚如何使用浮点变量和双变量打印总数(我认为我们可以选择其中一个)同时使用循环机制( while,do-while 或 for )。我决定使用 for 循环。任何的意见都将会有帮助。我现在所拥有的每一个部分都打印出来,直到它到达最后一个部分。我尝试了不同的变化但到目前为止我什么都没得到
我需要帮助计算总数:
1/1 + 1/2 + 1/3 + 1/4 + ....... 1/99999999 + 1/100000000
这是我到目前为止所做的:
#include <iostream>
using namespace std;
int main()
{
float answer = 0;
int num;
for (int den = 1; den <= 100000000; ++den)
{
num = 1;
cout << num << "/" << den;
if (den == 100000000)
cout << " = " << endl;
else
cout << " + ";
answer += ( (float)num ) / ( (float)den );
}
cout << answer << endl;
}
谢谢!
答案 0 :(得分:2)
在任何时候,你的程序必须使用浮点数或双精度数,所以我想你想要依次重用每种类型的计算代码。以下是使用模板进行两次计算的示例 - 首先是float
,然后是double
:
#include <iostream>
template <typename T>
void calculate()
{
T answer = 0;
for (int den = 1; den <= 100000000; ++den)
answer += T(1) / T(den);
std::cout << answer << '\n';
}
int main()
{
calculate<float>();
calculate<double>();
}