判断一个数是不是快乐数?快乐数的定义为一个正整数,计算出它各位数字的平方和,得到一个新的数字,再对这个新的数字重复这一过程,直到最后得到数字1或是其他某几个数字的无限循环。在这些数字中,经过上述流程最终能得到数字1的数字,被称为“快乐数”。
据观察规律发现,不是快乐数的都会陷入到4,16,37,58,89,145,42,20,4的死循环中,也就是说出现了4这个和就不是快乐数了。
namespace 快乐数
{
class Program
{
static void Main(string[] args)
{
CalNum(4);
Console.ReadKey();
}
static void CalNum(int n)
{
int sum = 0;
while (n != 0)
{
int i = n % 10;
n = n / 10;
sum += i * i;
}
Console.WriteLine(sum);
if (sum == 1)
{
Console.WriteLine("快乐数");
return;
}
else if (sum == 4) {
Console.WriteLine("不太快乐数");
return;
}
CalNum(sum);
}
}
}while循环体中计算正整数n的每位数的平方和。