1058 粗心的物理学家
1、题目戳这里
第一次看见这题的时候,感觉是一题很水的题,但是当代码交上去的时候竟然是WA,整个人都是懵逼的,后来才知道竟然会出现大数吃小数的问题,就是精度的问题,所以要先加小数,这样就不会有影响了。
2、代码:
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int n;
while(cin>>n)
{
double ans=0;
for(int i=n; i>=1; i--)
{
ans+=1.000000000000/i;
}
cout<<fixed<<setprecision(12)<<ans<<endl;
}
return 0;
}