学堂 学堂 学堂公众号手机端

水仙花数是指一个n位数,其各位数字的n次幂之和等于它本身

lewis 2年前 (2023-10-05) 阅读数 6 #技术

水仙花数是指一个n位数,其各位数字的n次幂之和等于它本身。例如,153是一个水仙花数,因为1^3+5^3+3^3=153。

要解决C++中的水仙花数问题,可以编写一个程序来循环遍历所有可能的n位数,然后计算其各位数字的n次幂之和,最后判断是否等于原数。

以下是一个简单的C++程序示例来解决水仙花数问题:


#include<iostream> #include<cmath> intmain(){ intnum,sum,temp,digit; std::cout<<"水仙花数有:\n"; for(inti=100;i<1000;i++){ num=i; sum=0; while(num>0){ digit=num%10; sum+=pow(digit,3); num/=10; } if(sum==i){ std::cout<<i<<""; } } return0; }

这个程序会输出所有的3位水仙花数。您也可以根据需要调整循环的范围来查找其他位数的水仙花数。

版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门