求n位水仙花数
求n位水仙花数
A.两个关键
1.n位水仙花数的范围是什么?
n位水仙花数的范围是[10n-1,10n)
2.如何判断是否为水仙花数
核心操作:
2-1.如何得到每一位?
A.核心思想
对得到的数进行先取余后取整的循环操作。
B.具体操作
用一变量g来得到将要判断的值,用变量h来依次存放每一位,g取余后把值赋给变量h,然后g再进行除10运算,如此循环往复,直到h依次得到每一位为止。
2-2.如何将得到的每一位进行n次方?
A.核心思想
调用Math.pow()函数即可(注:Math.pow()函数的返回值是double类型的数据)
B.具体操作
设一个变量t来求和,把操作1的变量h应用Math.pow()函数并把其应用后的值加入到t中,然后循环往复,直到结束该循环。(注:因为水仙花数一般是定义成int类型,所以在赋值运算过程中要把Math.pow()函数得到的值进行强制类型转换)
B.易错点分析
1.Math.pow()函数的返回值是double类型,
a.在赋值运算中,若赋给非double类型的值时都必须执行强制类型转化操作(目的:转换成相同类型)。
b.在比较运算中,系统会自动执行自动类型转化操作(转换方向:级别更高的类型),此时无需执行强制类型转化操作。
2.用来求和的变量t在每次判断完(是否是水仙花数)之后都需要归零。
3.必须用一个新的变量(本题为g)来存放将要判断的值。
C.代码以及运行结果截图
代码截图
运行结果截图
D.所写程序的优缺点
优点:适用范围较广,可以根据用户的需要来进行键盘输入
缺点;运行所花时间有点长而且数据够大时运行不了(其程序运行时占的内存空间不小)
E.相关英语词汇积累
1.水仙花: daffodil; narcissistic;其别名: 自恋数、自幂数或阿姆斯壮数(Armstrong number).
2.数;number;
3.归零: return to zero。
4.核心思想:core thought.
5.位数: places
6.易错分析:Easy to fault analysis
7.[计] totalizer 加法计算器;
8.[计] accumulator 蓄电池;[计] 累加器;积聚者;
9.[计] assignment operation赋值运算
10.[计] comparison operation比较运算
求n位水仙花数的更多相关文章
- java实现求二十一位水仙花数(21位水仙花数)
一个N位的十进制正整数,如果它的每个位上的数字的N次方的和等于这个数本身,则称其为花朵数. 例如: 当N=3时,153就满足条件,因为 1^3 + 5^3 + 3^3 = 153,这样的数字也被称为水 ...
- C#学习笔记(29)——Linq的实现,Lambda求偶数和水仙花数
说明(2017-11-22 18:15:48): 1. Lambda表达式里面用了匿名委托,感觉理解起来还是挺难的.求偶数的例子模拟了Linq查询里的一个where方法. 2. 蒋坤说求水仙花数那个例 ...
- Problem03 水仙花数
题目:打印出所有的"水仙花数"."水仙花数"是指一个三位数,其各位数字立方和等于该数本身. 例如:153是一个"水仙花数",因为153=1的 ...
- 打印出三位数的水仙花数Python
水仙花数计算 ...
- python 打印出水仙花数
打印出三位水仙花数方法及解释 num = 100while num <= 999: #这里num 小于等于999 则运行 填1000也可以 a = num % 10 #num对10取余 b = ...
- Python输出水仙花数,用逗号分隔
描述 "水仙花数"是指一个三位整数,其各位数字的3次方和等于该数本身. ...
- php 求水仙花数优化
水仙花数是指一个n位数(n>=3),它每一个位上数字的n次幂之和等于它本身,n为它的位数.(比如:1^3+5^3+3^3 = 153) 水仙花数又称阿姆斯特朗数. 三位的水仙花数有4个:153, ...
- acm水题3个:1.求最大公约数;2.水仙花数;3.判断完数
//7.求两个整数的最大公约数#include<stdio.h>//用穷举法求出最大公约数int gcd1(int m,int n){ int min = m > n ? n : m ...
- 二、求水仙花数,打印出100-999之间所有的"水仙花数"
所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身. 例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方 public c ...
随机推荐
- 算法(Algorithms)第4版 练习 1.3.26
方法实现: //1.3.26 /** * remove all of the nodes in the list that have key as its item field * * @param ...
- BZOJ 2020 [Usaco2010 Jan]Buying Feed,II:贪心【定义价值】
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2020 题意: FJ开车去买K份食物. 如果他的车上有X份食物,每走一里就花费X元. FJ的 ...
- BZOJ 1201 [HNOI2005]数三角形:枚举 + 前缀和
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1201 题意: 有一个边长为n的正三角形网格,去掉其中一些线段,问你在这幅图中有多少个三角形 ...
- web项目的实质
web项目的实质 web项目的实质其实也就是在用户发过来一个请求后,我们返回一个响应. 用户看到的页面就是我们响应中的响应体(里面是html代码). 所以,我们整个项目的所有操作都是围绕着怎么来写好这 ...
- hihocoder1075【开锁魔法】
hihocoder1075[开锁魔法] 题意是给你一个 \(1-n\) 的置换,求选 \(k\) 个可以遍历所有点的概率. 题目可以换个模型:有 \(n\) 个球,有 \(cnt\) 种不同的颜色,求 ...
- ACM学习历程—HDU2068 RPG的错排(组合数学)
Description 今年暑假杭电ACM集训队第一次组成女生队,其中有一队叫RPG,但做为集训队成员之一的野骆驼竟然不知道RPG三个人具体是谁谁.RPG给他机会让他猜猜,第一次猜:R是公主,P是草儿 ...
- uC/OS-II源码分析(一)
下载地址:http://www.micrium.com/ 它的特点: 1)开源, 2)可移植性,绝大部分代码用C写,硬件相关部分用汇编写, 3可固化, 4)可剪裁,这通过条件编译实现,使用#defin ...
- Python3解leetcode Same TreeBinary Tree Level Order Traversal II
问题描述: Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, fro ...
- Day09: socket网络编程-OSI七层协议,tcp/udp套接字,tcp粘包问题,socketserver
今日内容:socket网络编程 1.OSI七层协议 2.基于tcp协议的套接字通信 3.模拟ssh远程执行命令 4.tcp的粘包问题及解决方案 5.基于udp协议的套接字 ...
- 虚拟机ubuntu和windows共享文件
设置虚拟机ubuntu和windows共享文件(方便复制文件到本机) (需要安装samba) 登陆ubuntu系统后,点击左边的文件夹.右击新建个文件夹. 设置为共享 ubuntu会提示你 ...