除以100时的问题
Problems while dividing by 100
你好,我是编程新手,遇到了一个问题,我有一个整数,例如158,我把它除以100,我得到的是1,但我想要1.58而不是
这可能是已知的问题,但对不起,我现在不知道:)
将其强制转换为float number
int i = 158;
float f = (float)i / 100; //less precision
double d = (double)i / 100; //more precision
//other way
int i = 158;
float f = i / 100.0; //less precision
double d = i / 100.0; //more precision
你所做的是将整数除以整数,在这种情况下结果总是整数,为了得到浮点数,两个操作数中至少有一个必须是浮点数
您需要除以100.0
而不是100
在c++中除以一个整数总是会得到一个整数,所以它永远不会完全准确。如上所述,您可以除以一个double或long来得到您想要的精确的十进制数。
相关文章:
- 为"adjacent"变量赋值时出现问题
- 在Ubuntu 16.04上安装Cilk时出现问题
- 编译包含字符串的代码时遇到问题
- 在编译C++代码(具有dlib和opencv)到WASM时面临问题
- C++ 雷神库 - 使用资源加载器类时出现问题(不命名类型)
- 使用mongocxx驱动程序时包含头文件问题
- 在WSL:configure_file上对config_file的每次调用都失败:配置文件时出现问题
- 运行程序时出现问题
- 在决定是通过参考还是通过价值时,尺寸真的是一个问题吗
- C++问题:用户认为数字1-100,程序提出问题不超过6次即可得到答案。无法正确
- 在java中解决这段代码时面临循环中的问题
- 当调用switch语句中的函数时(即使函数不包含循环),似乎是永不结束的循环的问题
- 编译要在英特尔Hyperscan中使用的.cc文件时出现问题
- 使用FFMPEG将RGB图像序列保存到.mp4时出现问题
- 为什么以下C++元编程代码在 N=100 时给出编译错误,但对于小 N 运行良好
- 当结果超过 100 时,程序不显示结果
- 提升反序列化问题:运行时输入流错误 (c++)
- Clang 问题:构造时隐式类型转换
- XML Lite 解析问题 - 解析时忽略无效数据
- 除以100时的问题