任务描述
本关需要你编写一个递归函数,计算级数并输出值。
相关知识
过关斩将是你的本事,让我们继续递归编程的探索!
编程要求
编写一个递归函数,计算下面的级数:
m(k) = 1 + 1/2 +1/3 +… + 1/k
其中k为正整数。
编写测试函数main,输入正整数k,输出m(k)的值。
效果如下:
输入:3 输出:1.8333333
答案
#include <iostream>
using namespace std;
int k;
double m(int x)
{
if(x>k) return 0;
double res=0;
res+=1.0/x+m(x+1);
return res;
}
int main()
{
cin>>k;
cout<<m(1);
}