教教我!

P1035 [NOIP2002 普及组] 级数求和

zzc929 @ 2023-09-29 20:50:22

#include<bits/stdc++.h>
using namespace std;
int k,n=1;
int main(){
    cin>>k;
    for(int i=1;i<=k;i++)n=n+1/i;
    cout<<n;
}

一直答不对?


by zzc929 @ 2023-09-29 20:50:46

@2022cxy


by lzyqwq @ 2023-09-29 20:53:30

1/i变成下取整了,开double,还有输出的是最后那个i而不是级数的值


by zzc929 @ 2023-09-29 20:55:42

@蒟蒻·廖子阳 大佬,所以我该怎么改?


by lzyqwq @ 2023-09-29 20:56:36

@zzc929

#include<bits/stdc++.h>
using namespace std;
int main()
{
    double n,s=0,i=1;
    cin>>n;
    while(s<=n)
    {
        s+=1/i;
        i++;
    }
    cout<<i-1;
    return 0;
}

这是我两年前写的抽象代码,你可以看看


by lzyqwq @ 2023-09-29 20:57:09

@zzc929 还有你 11 道黑题有点厉害啊


by zzc929 @ 2023-09-29 20:58:13

@蒟蒻·廖子阳 身为菜*的我看不懂


by lzyqwq @ 2023-09-29 20:59:55

@zzc929 题解里写的蛮清楚的吧,可以去参考一下


by zzc929 @ 2023-09-29 21:00:29

@蒟蒻·廖子阳 你能在我的基础上教我一下吗?


by zzc929 @ 2023-09-29 21:01:08

@蒟蒻·廖子阳 我不喜欢抄题解


by lzyqwq @ 2023-09-29 21:04:12

#include<bits/stdc++.h>
using namespace std;
double k,n=0;
int main(){
    cin>>k;
    for(double i=1;;i++){
            n=n+1.0/i;
            if(n>k)return cout << i, 0;
        }
}

@zzc929


| 下一页