关于1/(2*x-1)函数代码求解答


#include<iostream>
#include<iomanip>
using namespace std;
float jisuan(int);
int main()
{
    int n;
    while (cin >> n)
    {
        cout << setiosflags(ios::fixed)<<setprecision(6) << jisuan(n) << endl;
    }
}
float jisuan(int n)
{
    if (n == 1)return 1;
    else return 1 / (2 * n - 1) + jisuan(n - 1);
}

一道练习题,题上的案例都通过了但是不通过审核,求帮忙

img

1/(2 * n - 1)是整除,结果是0。你需要写成 1.0/(2 * n- 1)


#include<iostream>
#include<iomanip>
using namespace std;
float jisuan(float);
int main()
{
    int n;
    while (cin >> n)
    {
        cout << setiosflags(ios::fixed)<<setprecision(6) << jisuan(n) << endl;
    }
}
float jisuan(float n)
{
    if (n == 1)return 1;
    else return 1 / (2 * n - 1) + jisuan(n - 1);
}

改了点,但是还是提交失败