码迷,mamicode.com
首页 > 编程语言 > 详细

使用C#语言实现输出1000以内的水仙花数

时间:2017-05-14 01:06:26      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:实现   使用   images   src   i++   方法   大神   img   结果   

所谓水仙花数,是指一个n位数(n>=3),它的每个位上的数字的n次幂之和等于它本身,例如:153=13+53+33。首先,我们应该解决的关键问题是,怎么通过C#语言判断一个数是不是水仙花数?既然水仙花数的定义是每个位上的数字的n次幂之和等于它本身,那么我们需要先分别得到一个数每个位上的数字,然后判断每个位上的数字的n次幂之和是否等于等于它本身。取出百位的数字可以使用 int a=i/100%10;(其中变量a存储百位数字。先将变量i中的值除以100,因为被除数和除数都是int类型的值,所以得到值的是百位及以上位的值,因为现在我们只需要得到百位的值,所以可以将其求余,就能得到百位的值,取出其他位的值可以采用类似思路。),取出十位的数字可以使用 int b=i/10%10;(其中变量b存储十位数字)。取出个位的数字可以使用 int c=i%10;(其中变量c存储个位数字)。程序的具体思路是,先使用一个fou循环使变量i从100开始自增到999,当i大于999时,退出for循环,在for循环内使用上面介绍的方法得到得到各个位上的值,再使用一个if判断语句来判断其是否为水仙花数,如果是即输出该数。具体程序可参考下文代码:

for (int i = 100;i < 1000; i++)
{
int a=i/100%10;
int b=i/10%10;
int c=i%10;
if (i == a * a * a + b * b * b + c * c * c)
{
Console.WriteLine(i);
}

}
Console.ReadLine();

实现结果演示:

技术分享

(最后,感谢你看到这里,新人第一次发博,如果有什么不对的地方,请大神海涵!)

使用C#语言实现输出1000以内的水仙花数

标签:实现   使用   images   src   i++   方法   大神   img   结果   

原文地址:http://www.cnblogs.com/hzrdbk/p/6850885.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!