1. 程式人生 > >藍橋杯_C語言_本科B——調和級數

藍橋杯_C語言_本科B——調和級數

1/1 + 1/2 + 1/3 + 1/4 + … 在數學上稱為調和級數。

它是發散的,也就是說,只要加上足夠多的項,就可以得到任意大的數字。

但是,它發散的很慢:

前1項和達到 1.0
前4項和才超過 2.0
前83項的和才超過 5.0

那麼,請你計算一下,要加多少項,才能使得和達到或超過 15.0 呢?

請填寫這個整數。

注意:只需要填寫一個整數,不要填寫任何多餘的內容。比如說明文字。

#include <iostream>
using namespace std;

int main()
{
    double sum=0;
    int n=1;
    while(sum<15
) { sum=sum+1.0/n;//注意這裡的1.0 n++; } cout<<n<<endl; cout<<"fuck"; return 0; }

非常簡單的一道題,我一開始用遞迴發現無法執行,可能是棧溢位了。由此可知,能用迴圈儘量別用遞迴。

考察對浮點數的理解