题目描述:
打印所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该本身。 例如: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语言代码)浏览:1661 |
九宫重排 (C++代码)浏览:1336 |
C语言程序设计教程(第三版)课后习题9.4 (Java代码)浏览:1419 |
C语言程序设计教程(第三版)课后习题8.6 (C语言代码)浏览:600 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:485 |
三角形 (C++代码)递归(存在大量重复计算,容易出现时间超限)浏览:781 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:472 |
用筛法求之N内的素数。 (C语言代码)浏览:652 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:577 |
简单的a+b (C语言代码)浏览:817 |