C#求100-999之间的水仙花数,你知道多少个?让我们一起来探索!

简介: C#求100-999之间的水仙花数,你知道多少个?让我们一起来探索!

背景:

    水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数指一个n等于3的倍数的正整数,它的各位上的数字的3次方之后 等于它本身,那么这就是一个水仙花数,比如153,它是一个水仙花数,因为1³+5³+3³=153。

水仙花数得名于19世纪初期的一个数学家,他发现了这个有趣的数列,并将其描述为”完美花朵”因为这些数字的各个位上的数字看起来像花瓣。水仙只存在于个位数、两位数、三位数中。

扩展:

水仙花数是自幂数的一种,其他自幂数的名字以及各个数如下:

自幂数

一位

三位

四位

五位

六位

七位

八位

九位

十位

名字

独身数

水仙花数

四叶玫瑰数

五角星数

六合数

北斗七星数

八仙数

九九重阳数

十全十美数

数量

153、370、371、403

1634、8208、9474

54748、92727、93084

548834

1741725,4210818,9800817,9926315

1741725,4210818,9800817,9926315

1741725,4210818,9800817,9926315

1741725,4210818,9800817,9926315

水仙花数例子:

 int hundrd = 0;//定义一个整型变量 hundrd,并初始化为 0
 int ten = 0;//···
 int individul = 0;//···
 for (int i = 100; i <= 999; i++)//使用for循环遍历100-999之间的整数
 {
     hundrd = i / 100;//获取百位数字
     ten = i % 100 / 10;//获取十位数字
     individul = i % 100 % 10;//获取个位数字
     if (hundrd * hundrd * hundrd + ten * ten * ten + individul * individul * individul == i)//如果当前整数i是水仙花数,则满足以下等式:百位数的立方+十位数的立方+个位数立方等于当前整数i
     {
         Console.WriteLine(i+"是一个水仙花数");//输出i到控制台
     }
 }
 Console.ReadKey ();//等待用户按下任意键

效果展示:

总结:

通过C#来实现 100-999之间的水仙花数,核心代码就是通过取余匀运算%来获取百位、十位和各位数字,然后计算它们的立方和,如果立方和的结果等于整数本身,则该整数是一个 水仙花数,最后在控制台输出结果。


目录
相关文章
|
7月前
练习实例 - 水仙花数
【1月更文挑战第14天】水仙花数。
54 0
|
1月前
两数之间的 Armstrong 数
【10月更文挑战第24天】两数之间的 Armstrong 数。
15 4
|
3月前
水仙花数
水仙花数。
107 7
|
7月前
|
C++
水仙花数.
这是一个关于求解水仙花数的C++代码片段。水仙花数是指3位数,其各位数字立方和等于该数本身,如153。代码通过循环遍历100到999,拆分每位数字并计算立方和,如果满足条件则输出该数。解题关键在于对三位数的个位、十位、百位进行拆分和立方运算。
75 0
求1000以内所有的水仙花数
求1000以内所有的水仙花数
wustojc4001判断水仙花数
wustojc4001判断水仙花数
56 0
|
算法
求水仙花数
求水仙花数
78 0
找出水仙花数
找出水仙花数
83 0
水仙花数(加扩展自幂数)
水仙花数(加扩展自幂数)
123 0