
1126 水仙花数
发布日期:2021-05-08 21:18:23
浏览次数:19
分类:精选文章
本文共 1066 字,大约阅读时间需要 3 分钟。
为了找到小于给定整数n的所有水仙花数,我们需要检查每个三位数是否满足水仙花数的条件。水仙花数是指一个三位数ABC,使得A³ + B³ + C³等于该数本身。以下是详细的步骤说明:
输入整数n:首先读取输入的整数n,确保n小于1000。
初始化变量:创建一个循环变量i,从100开始遍历到n-1。
分解数字:对于每个i,将其分解为百位A、十位B和个位C。
计算立方和:计算A³ + B³ + C³的值,检查是否等于i。如果相等,则i是一个水仙花数。
收集结果:将所有满足条件的水仙花数收集到一个列表中。
输出结果:如果列表为空,输出“No Answer”;否则,按顺序输出所有水仙花数。
以下是实现代码:
#include#include int main() { int i = 100; int n; scanf("%d", &n); int count = 0; int results[100]; for (; i < n; i++) { int a = i / 100; int b = (i % 100) / 10; int c = i % 10; int sum = a * a * a + b * b * b + c * c * c; if (sum == i) { results[count++] = i; } } if (count == 0) { printf("No Answer\n"); } else { for (int j = 0; j < count; j++) { printf("%d ", results[j]); } printf("\n"); } return 0;}
代码解释:
- 读取输入:使用
scanf
函数读取整数n。 - 循环遍历:从100开始遍历到n-1,检查每个数是否为水仙花数。
- 分解数字:通过整数除法和取余操作将i分解为百位、十位和个位。
- 立方和计算:计算各位数字的立方和,判断是否等于原数。
- 结果收集和输出:将满足条件的数收集到数组中,最后按顺序输出或输出“No Answer”。
这个程序能够正确识别并输出所有小于n的水仙花数。
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2025年04月02日 03时33分56秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
深入理解JavaScript函数
2019-03-06
【spring源码系列】之【xml解析】
2019-03-06
(在模仿中精进数据可视化07)星球研究所大坝分布可视化
2019-03-06
(数据科学学习手札02)Python与R在循环语句与条件语句上的异同
2019-03-06
(数据科学学习手札27)sklearn数据集分割方法汇总
2019-03-06
(数据科学学习手札40)tensorflow实现LSTM时间序列预测
2019-03-06
[整理] 哪些集合类是线程安全的?(Java)
2019-03-06
8 个警示和学习的 5 个阶段
2019-03-06
c# 图片带水纹波动
2019-03-06
H5 贪吃蛇源码
2019-03-06
从零开始学安全(十六)● Linux vim命令
2019-03-06
从零开始学安全(三十四)●百度杯 ctf比赛 九月场 sqli
2019-03-06
3389连接痕迹清除
2019-03-06
发生系统错误 6118
2019-03-06
阿里巴巴Json工具-Fastjson教程
2019-03-06
Spring Cloud Gateway - 快速开始
2019-03-06
Spring Security 实战干货:理解AuthenticationManager
2019-03-06
Java对象转JSON时如何动态的增删改查属性
2019-03-06
Python 面向对象进阶
2019-03-06
Linux常用统计命令之wc
2019-03-06