分析问题
输入一个数字x,然后不断的列举数字更大的数字n,让最后的累加的值大于x,输出此时的n是多少
建立模型
输入一个数字x
从1开始循环查找
如果 s=1+1/2+1/3+⋯+1/n 的值大于 X
输出n
结束循环查找
编写代码
#include <bits/stdc++.h>
using namespace std;
int main(){
int x;
cin>>x;
double n=1,sum=0;//n用于计数 sum用于累加 注意要使用小数数据类型
while(1){
sum=sum+1.0/n; //注意整数相除不能得到小数 小数除整数则可以
if(sum>x) break;
n=n+1;
}
cout<<n;
return 0;
}