pow函数返回值出现误差问题
来源:互联网 发布:数据分析师考试大纲 编辑:程序博客网 时间:2024/06/07 20:41
今天在写程序时,发现了一个pow返回误差的问题。例如直接输出
cout<<pow(10, 4)<<endl;
输出结果是9999, 存在误差。
我是在codeblocks编译器中发现的这个问题,并不能保证在其他编译器中也会有同样问题。
上网查了一下资料,我们都知道(int)99.99999后其值为99.
解决方法:
1.强制转换为(double)类型
double d=pow(10, 4);cout<<d<<endl;
2.加一个误差修正
printf("%d\n",(int)round(pow(10,4)));
3.或者直接换编译器
0 0
- pow函数返回值出现误差问题
- pow() 函数返回 x 的 y 次方
- java浮点数出现误差问题
- CST时间转换出现的误差问题
- CST时间格式化出现误差问题
- pow函数与sqrt函数的返回值为double型
- 函数返回值问题
- 函数返回值问题
- 函数返回值问题
- 函数返回值问题
- 函数返回值问题
- HDOJ 排序(pow函数的调用值及返回值类型)
- pow的返回值是double型
- C++函数pow()精度丢失问题
- pow函数
- pow ()函数
- pow()函数
- pow函数
- Java基础之面向对象基础知识整理——类和对象
- 接入物理键盘时, 默认弹出软件键盘
- CImageList常见的错误,函数的存活周期
- node作为中间服务层如何发送请求
- BootStrap简单轮播图
- pow函数返回值出现误差问题
- ArcMap+Visio实现高清矢量地图导出,轻松插入Word文档中,消除文字模糊现象
- dataframe写入postgresql数据库中
- invalid bound statement (not found)
- 面向对象的特性之—初识封装
- poj1949(拓扑,dp)
- Andorid 支付宝调起H5页面异常 系统繁忙4000
- MPAndroidChart之PieChart源码分析
- javascript对象创建模式