打印所有的水仙花数

 1 package com.demo;
 2
 3 /*
 4  * 题目:输出所有的水仙花数
 5  *
 6  * 所谓水仙花数是指一个3位数,其各个位上数字的立方和等于其本身。
 7  * 例如: 153 = 1 * 1 * 1 + 3 * 3 * 3 + 5 * 5 * 5
 8  *
 9  */
10
11 public class NarcissisticNumber {
12     public static void main(String[] args) {
13
14         for (int i = 100; i < 1000; i++) {
15             int n1 = i % 10; // 个位
16             int n2 = i / 10 % 10; // 十位
17             int n3 = i / 100; // 百位
18
19             // 如果是水仙花数,则输出
20             if (i == n1 * n1 * n1 + n2 * n2 * n2 + n3 * n3 * n3) {
21                 System.out.println(i);
22             }
23         }
24
25     }
26 }

运行结果:

153
370
371
407

原文地址:https://www.cnblogs.com/stefaniee/p/10908327.html

时间: 2024-08-30 08:21:50

打印所有的水仙花数的相关文章

打印出所有&quot;水仙花数&quot;,所谓&quot;水仙花数&quot;是指一个三位数,其各位数字立方和等于该本身。 例如:153是一个水仙花数,因为153=1^3+5^3+3^3。

题目描述 打印出所有"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该本身. 例如:153是一个水仙花数,因为153=1^3+5^3+3^3. Output: 153 ??? ??? ??? 输入 无 输出 所有的水仙花数,从小的开始. 每行一个 样例输入 无 样例输出 无 程序:#include<stdio.h>int main(){    int i,a,b,c;    for(i=100;i<1000;i++)    {  

python 打印所有的水仙花数

目标分析: #水仙花数是指一个 n 位数(n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身. 例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方. 利用for循环控制100-999个数,每个数分解出个位,十位,百位. 一.参考解法: 1 for a in range(1,10): 2 for b in range(0,10): 3 for c in range(0,10): 4 s1= a*100+b*10+c 5 s2= pow(a,3)+pow(

打印所有的水仙花数,所谓水仙花数是指一个三位数,其每一位的立方和等于它身;例如:153=1的立方+5的立方+3的立方

初学前端,今天老师布置的作业之中就有这道题,这是我自已的理解,可能思路不是很清晰,没有体现出有穷性:但大致是这样,实现的方式有很多种,不一定非要用这种: 代码如下:

打印三位数水仙花数

public class TestShui{ public static void main(String[] args){ for(int i=100;i<1000;i++){ if(i==(i/100)*(i/100)*(i/100)+(i%100/10)*(i%100/10)*(i%100/10)+(i%10)*(i%10)*(i%10)){ System.out.println(i); } } }} 原文地址:https://www.cnblogs.com/sumboy/p/905805

js算法集合(一) 水仙花数 及拓展(自幂数的判断)

js算法集合(一) ★ 最近有些朋友跟我说对js中的一些算法感到很迷惑,知道这个算法到底是怎么回事,但是就是不会用代码把它写出来,这里我跟大家分享一下做水仙花数的算法的思路,并对其扩展到自幂数的算法,希望能对大家有所帮助. 1.验证一个数是否为水仙花数 ①要写水仙花数的算法,我们首先来了解一下什么是水仙花数,水仙花数是指一个 3位正整数 ,它的每个位上的数字的 3次幂之和等于它本身.(例如:1^3 + 5^3+ 3^3 = 153): ②了解了什么是水仙花数我们就开始分析该怎么下手.通过定义来看

c语言——水仙花数问题

2017-04-1518:32:37 问题描述:打印所有的"水仙花数" .所谓"水仙花数"是指一个三位数,其各位数字的立方和等于该数本身. 例如:153是"水仙花数".因为153=13+33+53. 2.[算法思想] 首先,确定水仙花数n可能存在的范围,因为n是一个三位数,所以范围确定为 n 从 100 变化到 999. 其次,分离出 n 的百位 i.十位 j.个位 k 后,只要判断 n 是否等于i*i*i+j*j*j+k*k*k 即可知道 n

水仙花数讲解

题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方. 代码及讲解如下: def cal_data(m,n): sum = 0 :定义一个变量来接受和 tmp = [] :将打印出的水仙花数放到一个列表中 for i in range(m, n): :区域,一个范围数值进行循环.如,100:10000 for j in rang

打印出所有的&quot;水仙花数&quot;,所谓&quot;水仙花数&quot;是指一个三位数,其各位数字立方和等于该数本身。

package com.mumu.ready; public class Daffodils { // 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身. // 例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方. public static void main(String[] args) { for (int i = 100; i < 1000; i++) { in

Java程序设计之打印100~999的水仙花数

package printDaffodilNumber; /* * 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.(100~1000) * 比如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方. */ public class printNumber { static int number1; static int number2; static int number3;