自幂数:从概念到代码实现
创作时间:
作者:
@小白创作中心
自幂数:从概念到代码实现
引用
CSDN
1.
https://m.blog.csdn.net/Luluucy/article/details/139014696
自幂数(也称为阿姆斯特朗数或自恋数)是一个有趣的数学概念,它指的是一个数的各个位数的幂次之和等于该数本身。例如,153是一个三位自幂数,因为1^3 + 5^3 + 3^3 = 153。本文将详细介绍一到十位的自幂数,并提供C、C++和MATLAB三种编程语言的代码示例,帮助读者更好地理解和实现这一概念。
一到十位的自幂数
自幂数是指一个数的各个位数的幂次之和等于该数本身的数字。以下是一到十位的自幂数:
- 一位自幂数:独身数
- 三位自幂数:水仙花数
- 四位自幂数:四叶玫瑰数
- 五位自幂数:五角星数
- 六位自幂数:六合数
- 七位自幂数:北斗七星数
- 八位自幂数:八仙数
- 九位自幂数:九九重阳数
- 十位自幂数:十全十美数
一位自幂数
一位数中的自幂数即为该数本身。
二位自幂数
二位数中没有自幂数。
三位自幂数
三位自幂数是指一个三位数,其个位、十位和百位的立方和等于该数本身。目前已知的唯一一个三位自幂数是 153。
四位自幂数到十位自幂数
四位及以上的自幂数确实存在,例如四位自幂数有1634、8208、9474等。由于篇幅限制,这里不再列举更多。
代码示例
以下是用C语言实现的代码示例:
#include <stdio.h>
#include <math.h>
int main()
{
printf("一位自幂数:\n");
for (int num = 0; num <= 9; num++)
{
printf("%d\n", num);
}
printf("二位自幂数:\n");
// 二位数中没有自幂数
printf("三位自幂数:\n");
for (int num = 100; num <= 999; num++)
{
int digit1 = num / 100;
int digit2 = (num / 10) % 10;
int digit3 = num % 10;
int sum = pow(digit1, 3) + pow(digit2, 3) + pow(digit3, 3);
if (sum == num)
{
printf("%d\n", num);
}
}
printf("四位自幂数:\n");
// 四位自幂数目前未知
for (int num = 1000; num <= 9999; num++)
{
// 循环范围是从1000到9999,但目前尚未发现四位自幂数,因此循环体为空
}
// 五位到十位自幂数的循环同理,但范围不同
return 0;
}
以下是用C++实现的代码示例:
#include <iostream>
using namespace std;
int main() {
cout << "一位自幂数:" << endl;
for (int num = 0; num <= 9; num++)
{
cout << num << endl;
}
cout << "二位自幂数:" << endl;
// 二位数中没有自幂数
cout << "三位自幂数:" << endl;
for (int num = 100; num <= 999; num++)
{
int digit1 = num / 100;
int digit2 = (num / 10) % 10;
int digit3 = num % 10;
int sum = pow(digit1, 3) + pow(digit2, 3) + pow(digit3, 3);
if (sum == num) {
cout << num << endl;
}
}
cout << "四位自幂数:" << endl;
// 四位自幂数目前未知
for (int num = 1000; num <= 9999; num++)
{
// 循环范围是从1000到9999,但目前尚未发现四位自幂数,因此循环体为空
}
// 五位到十位自幂数的循环同理,但范围不同
return 0;
}
以下是用MATLAB实现的代码示例:
disp('一位自幂数:');
for num = 0:9
disp(num);
end
disp('二位自幂数:');
% 二位数中没有自幂数
disp('三位自幂数:');
for num = 100:999
digit1 = floor(num / 100);
digit2 = floor(mod(num, 100) / 10);
digit3 = mod(num, 10);
sum = digit1^3 + digit2^3 + digit3^3;
if sum == num
disp(num);
end
end
disp('四位自幂数:');
% 四位自幂数目前未知
for num = 1000:9999
% 循环范围是从1000到9999,但目前尚未发现四位自幂数,因此循环体为空
end
% 五位到十位自幂数的循环同理,但范围不同
通过以上代码示例,读者可以更好地理解自幂数的概念,并尝试找出更多位数的自幂数。
热门推荐
家中待客选茶指南:不同场合与客人喜好如何选择适宜茶叶
结婚送茶叶有寓意吗,探究结婚送茶叶的寓意与文化含义
碘伏和紫药水哪个更利于伤口愈合?
紫药水是高锰酸钾吗?一文读懂两者区别
肌无力症怎么治疗
调和油和菜籽油哪个好? 全面对比解析
如何理解AH溢价率的意义?这种AH溢价率对两地市场有哪些影响?
判断一个数能否同时被3和5整除
从AI到大数据:打造智能化营销自动化解决方案的核心技术
日照史前考古90周年暨东夷文化研究成果交流系列活动举行
云台山风景名胜区:太行山脉上的自然与人文瑰宝
建议收藏!2025年北京建档信息汇总——非京籍建册要求、朝阳妇幼建档流程
大食蚁兽:南美洲的“蚂蚁熊”
春天情绪易波动?专家:规律时间入睡
贾浅浅改简历引发争议:一个学者的本科学习经历为何可长可短?
李嘉诚“闪现”称赞的高强度聚焦超声技术,原来中国25年前已经进入临床
清胃黄连丸和龙胆泻肝丸能同服吗
60岁老人骨折钢板要取吗
麦子的生长与上市时间(探究麦子的生长特点及其季节性)
出版业AI技术应用研讨会成功举办,推动AI在出版领域的创新与发展
网红们教人用占星术炒股,还真有人信?结果,网红自己先亏光了
如何吃烤肉
颈椎核磁检查与气管症状关联咨询
资金流向指标:如何帮助投资者洞察市场动态
1年行驶4000公里,可以2年保养一次吗?修理工告诉你答案
“以量换价”:医保药品准入谈判的运行逻辑及机制探讨
水,乳,精华,霜,眼霜使用顺序
黑眼圈总消不掉,可能是过敏性鼻炎在“作祟” 专家:还有这些原因影响颜值
踝关节骨性关节病:从症状到治疗的全面指南
固定基金科目的相关问题有哪些?这些问题对财务管理有何影响?