问题描述
求恰好使 s=1+1/2+1/3+⋯+1/n 的值大于 X 时 n 的值。( 2≤x≤10 )
输入
输入只有一行,包括 1 个整数 X 。
输出
输出只有一行(这意味着末尾有一个回车符号),包括 1 个整数。
样例
输入
2
输出
4
编辑代码
语言 C++
有不懂的地方可以评论。
代码:
#include <bits/stdc++.h>
#include<string>
#include<algorithm>
using namespace std;
int x;
int sh(int n,double s){
s+=1.0/n;
if(s>x){
return n;
}
else{
return sh(n+1,s);
}
}
int main(){
cin>>x;
cout<<sh(1,0);
}