c++ - 我正在尝试用 C++ 做一个方程式,但它一直输出 1

标签 c++

这个问题在这里已经有了答案:





Integer division always zero [duplicate]

(1 个回答)


2年前关闭。




正如标题所说,这段代码旨在计算 5 人一组中 2 人生日相同的概率,但它只输出 1,我对 C++ 还很陌生,所以任何帮助都将不胜感激。

#include <iostream>
using namespace std;
int main(){
float p;

p=1-(364/365)*(363/365)*(362/365)*(361/365);
cout<<p;
}

最佳答案

在每个数字上加上 .0,这样就被视为 double 数而不是整数。整数除法 (364/365) 等于 0

p=1.0-(364.0/365.0)*(363.0/365.0)*(362.0/365.0)*(361.0/365.0);

关于c++ - 我正在尝试用 C++ 做一个方程式,但它一直输出 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59439093/

相关文章:

c++ - 如何在 char[] 中设置二进制数据

c++ - 在 VS2010 中禁用所有类型的优化

c++ - 从应用程序中获取应用程序版本

c++ - GetModuleFileName 不返回路径

c++ - 排序前修改顺序一致性

c++ - 访问静态变量时内联函数和静态内联函数之间的区别

c++ - 将指向结构的指针转换为指向该结构的唯一成员的指针

c++ - MSVS2015 Linux 调试启动 gdbserver 失败

c++ - Opencv图像以较小的尺寸保存而不压缩

c++ - GLSL 4.3 纹理问题