题目描述:
打印所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该本身。 例如:153 是一个水仙花数,因为153=13+53+33
解题思路:
因为水仙花数是一个三位数,所以先用一个 for 循环进行遍历,从 100~999 ,然后对数进行计算,分别求出个位、十位、百位的数字,然后进行比对,如果个位、十位和百位的三次方加起来等于该数,则输出那个数。
参考代码:
C++ 代码
#include<iostream> using namespace std; int main() { int i, a, b, c; for (i = 100; i <= 999; i++) { a = i % 10; b = (i / 10) % 10; c = (i / 100) % 10; if (i == a*a*a + b*b*b + c*c*c) cout << i << " "; } return 0; }
Java 代码 1
public class Main { public static void main(String[] args) { int i, a, b, c; for (i = 100; i <= 999; i++){ a = i % 10;//个位 b = (i / 10) % 10;//十位 c = (i / 100) % 10;//百位 if (i == a*a*a + b*b*b + c*c*c){ System.out.print(i+" "); } } } }
Java 代码 2
这里是先求出百位数,然后再求十位数,最后是求个位数
public class Main { public static void main(String args[]) { int i, a, b, c; for (i = 100; i <= 999; i++){ a=i/100;//百位 b=(i-100*a)/10;//十位 c=(i-100*a-10*b);//个位 if (i == a*a*a + b*b*b + c*c*c){ System.out.print(i+" "); } } } }
0.0分
5 人评分
C二级辅导-等差数列 (C语言代码)浏览:569 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:1114 |
大神老白 (C语言代码)浏览:712 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:424 |
【亲和数】 (C语言代码)浏览:535 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:850 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:1419 |
C语言程序设计教程(第三版)课后习题6.6 (C++代码)浏览:624 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:603 |
核桃的数量 (C语言代码)浏览:870 |