菜狗小提米的技美学习笔记(221229-C++:水仙花数)
菜狗小提米
2022年12月29日 18:47

    //水仙花数问题

    //由玩家输入一个最大值,这个最大值位于[0,1000]

    //求出从0至这个最大值的所有水仙花数,并对每个数进行编号

int Num = 0;

int Nummax = 0;

int A = 0; int B = 0; int C = 0;

int D = 0; int E = 0; int F = 0;

int No = 1;

cout << "Please input a Number as MAX Value: " << endl;

cin >> Nummax;

while (Nummax > 1000 || Nummax <= 0) {

cout << "Your input is invalid, please input a number less than 1000" << endl;

cout << "Please input a Number as MAX Value: " << endl;

cin >> Nummax;

}

if (Nummax > 0 && Nummax <= 1000) {

do {

A = Num / 100;

B = (Num - (100 * A)) / 10;

C = Num % 10;

Num++;

D = pow(A, 3);

E = pow(B, 3);

F = pow(C, 3); 

if ((D + E + F) == (Num - 1)) {

cout << "Num &#​34; << No << " = &#​34; << Num - 1 << endl;

No++;

}

} while (Num <= Nummax);

}