| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> C++知识库 -> C语言编写水仙花数程序及pow()函数可能存在的误差 -> 正文阅读 |
|
[C++知识库]C语言编写水仙花数程序及pow()函数可能存在的误差 |
先回顾一下题目,如下: 水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。 例如:153=1×1×1+5×5×5+3×3×3。 请计算所有N位水仙花数。 输入格式:在一行内,给出一个正整数N 输出格式:按递增顺序输出所有N位水仙花数,每个数字占一行。 输入样例:在这里给出一组输入。例如:
输出样例:在这里给出相应的输出。例如:
思路:标准做法是利用取余%,求出一个数的个位,是为,百位等,再分别进行N次幂运算求和 现尝试给出代码,下面会进行讨论
现输入3,在code blocks上运行结果如下: ?发现结果不完全对,少了个153。是代码出错了吗?其实并没有,这串代码在PTA上提交是显示正确的,那为什么会出现这种情况呢?(博主曾困惑许久,后经多方请教才明白其中道理) 我们对下面这串代码进行调试
输出结果如下: 发现了吗?这两个结果是不一样的只是接近。其原因就在于code blocks(其他平台因环境不同可能结果不同,这里博主使用的是code blocks)对pow()函数的处理存在误差,用常量是没有误差的,但用变量的话就可能出现问题了,涉及到内部数据的存储(当然问题应该还是出现的比较少的)?,只是提出这个现象的存在,就不做深入讨论了。 谨以此文给同博主一样在cb 上使用pow()函数时感到困惑的人一点启发。 *此为博主第一次发帖,若有什么错误敬请指出,对上面陈述的问题若有什么解决建议也欢迎提出。 |
|
C++知识库 最新文章 |
【C++】友元、嵌套类、异常、RTTI、类型转换 |
通讯录的思路与实现(C语言) |
C++PrimerPlus 第七章 函数-C++的编程模块( |
Problem C: 算法9-9~9-12:平衡二叉树的基本 |
MSVC C++ UTF-8编程 |
C++进阶 多态原理 |
简单string类c++实现 |
我的年度总结 |
【C语言】以深厚地基筑伟岸高楼-基础篇(六 |
c语言常见错误合集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 6:05:18- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |