gpt4 book ai didi

c++ - ceil() 函数的意外结果

转载 作者:行者123 更新时间:2023-12-01 14:04:33 26 4
gpt4 key购买 nike

#include <bits/stdc++.h>
using namespace std;

int main() {

long long n,m;
double ans;

cin>>n>>m;

ans=log(m)/log(n);

cout<<ans<<" "<<ceil(ans);
}

**input**
581
196122941
**output**
3 4
**expected output**
3 3

这是一个简单的 C++ 代码,其中输入是 2 个整数,我必须计算这些数字的对数除法并找到该结果的 ceil()。但是当我给出以下输入时,它显示除法结果是 3 但该结果的 ceil() 是 4。但是 ceil(3) 应该给出 3。为什么会发生这种情况?

最佳答案

结果类似于 3.0000000000000004441。 cout只打印前 6 位数字。还涉及某种舍入,但这不是通常的舍入。在我的机器上 3.000005打印为 33.000006打印为 3.00001 .打印更多数字

cout<< setprecision(20) << ans<<" "<<ceil(ans);

关于c++ - ceil() 函数的意外结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62315182/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com