for循环
#include <iostream>
using namespace std;// 水仙花数是指一个 3 数,它的每个位上的数字的 3次幂之和等于它本身
// 利用do...while 语句 求出所有3位数中的水仙花数// 在100到999之间找到,所有 3次幂之和等于它本身 的数int main()
{int num;int index = 0; //循环次数for (num = 100; num <= 999; num++){//num的百位数int n = num / 100;//num的十位数int u = num % 100 / 10;//num的个位数int m = num % 100 % 10;int nnn = pow(n, 3);int uuu = pow(u, 3);int mmm = pow(m, 3);index++;if (nnn + uuu + mmm == num){cout << "第" << index << "次" << endl;cout << "水仙花数:" << num << endl;}}system("pause");return 0;
}
do-while循环
#include <iostream>
using namespace std;// 水仙花数是指一个 3 数,它的每个位上的数字的 3次幂之和等于它本身
// 利用do...while 语句 求出所有3位数中的水仙花数// 在100到999之间找到,所有 3次幂之和等于它本身 的数int main()
{int num = 100;int index = 0; //循环次数do{//num的百位数int n = num / 100;//num的十位数int u = num % 100 / 10;//num的个位数int m = num % 100 % 10;int nnn = pow(n, 3);int uuu = pow(u, 3);int mmm = pow(m, 3);index++;if (nnn + uuu + mmm == num){cout << "第" << index << "次" << endl;cout << "水仙花数:" << num << endl;}num++;} while (num <= 999);system("pause");return 0;
}
输出:
第54次
水仙花数:153
第271次
水仙花数:370
第272次
水仙花数:371
第308次
水仙花数:407
请按任意键继续. . .