一定要注意在求1/i時分子應該寫成1.00,否則所算出的結果只是0.
下面的例子是輸入一個數,求出使1/2+1/3+1/4.......小於所輸入的數的最大i。
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
double a;
int i;
while(cin>>a )
{
if(a==0.00)
break;
float sum=0;
i=1;
while(a>sum)
{
i++;
sum+=1.0/i;
}
cout<<i-1<<" card(s)"<<endl;
}
}