我们如何使用float和double变量来计算和打印C ++中的操作?

时间:2014-09-25 05:12:56

标签: c++

澄清一下,这是一个课堂实验室。我现在正在学习所有的基础知识。我试图弄清楚如何使用浮点变量双变量打印总数(我认为我们可以选择其中一个)同时使用循环机制( 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; 

}

谢谢!

1 个答案:

答案 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>();
}