求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位水仙花数的更多相关文章

  1. java实现求二十一位水仙花数(21位水仙花数)

    一个N位的十进制正整数,如果它的每个位上的数字的N次方的和等于这个数本身,则称其为花朵数. 例如: 当N=3时,153就满足条件,因为 1^3 + 5^3 + 3^3 = 153,这样的数字也被称为水 ...

  2. C#学习笔记(29)——Linq的实现,Lambda求偶数和水仙花数

    说明(2017-11-22 18:15:48): 1. Lambda表达式里面用了匿名委托,感觉理解起来还是挺难的.求偶数的例子模拟了Linq查询里的一个where方法. 2. 蒋坤说求水仙花数那个例 ...

  3. Problem03 水仙花数

    题目:打印出所有的"水仙花数"."水仙花数"是指一个三位数,其各位数字立方和等于该数本身. 例如:153是一个"水仙花数",因为153=1的 ...

  4. 打印出三位数的水仙花数Python

    水仙花数计算 ‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪ ...

  5. python 打印出水仙花数

    打印出三位水仙花数方法及解释 num = 100while num <= 999: #这里num 小于等于999 则运行 填1000也可以 a = num % 10 #num对10取余 b = ...

  6. Python输出水仙花数,用逗号分隔

    描述 "水仙花数"是指一个三位整数,其各位数字的3次方和等于该数本身.‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪ ...

  7. php 求水仙花数优化

    水仙花数是指一个n位数(n>=3),它每一个位上数字的n次幂之和等于它本身,n为它的位数.(比如:1^3+5^3+3^3 = 153) 水仙花数又称阿姆斯特朗数. 三位的水仙花数有4个:153, ...

  8. acm水题3个:1.求最大公约数;2.水仙花数;3.判断完数

    //7.求两个整数的最大公约数#include<stdio.h>//用穷举法求出最大公约数int gcd1(int m,int n){ int min = m > n ? n : m ...

  9. 二、求水仙花数,打印出100-999之间所有的"水仙花数"

    所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身. 例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方 public c ...

随机推荐

  1. Unity中几种简单的相机跟随

    #unity中相机追随 固定相机跟随,这种相机有一个参考对象,它会保持与该参考对象固定的位置,跟随改参考对象发生移动 using UnityEngine; using System.Collectio ...

  2. 多线程(一) NSThread

    OS中多线程的实现方案: 技术 语言 线程生命周期 使用频率 pthread C 程序员自行管理 几乎不用 NSthread OC 程序员自行管理 偶尔使用 GCD C 自动管理 经常使用 NSOpe ...

  3. 编译debian内核

    玩腻了开发板,在pc上编译linux内核. debian 官方的内核文档见http://kernel-handbook.alioth.debian.org 我选择编译与当前内核版本对应的linux内核 ...

  4. 深入理解SP、LR和PC

    深入理解ARM的这三个寄存器,对编程以及操作系统的移植都有很大的裨益. 1.堆栈指针r13(SP):每一种异常模式都有其自己独立的r13,它通常指向异常模式所专用的堆栈,也就是说五种异常模式.非异常模 ...

  5. 自定义编辑框VC,可加载更改字体,添加背景图片,显示输入提示信息

    搞了一天终于弄了个完整的编辑框控件出来了, 哎,,,搞界面开发还是有点复杂的. #pragma once #include "AdvEdit.h" // CBkgEditBox c ...

  6. 发现eclipse红叉,查看markers发现Target runtime Apache Tomcat v8.0 is not defined

    导入以前的项目(Markers中注意查看,就在console选项卡旁边),报以下错误,但不影响操作: Faceted Project Problem        Target runtime Apa ...

  7. java中路径的获取

    网上摘录 (1).request.getRealPath("/");//不推荐使用获取工程的根路径 (2).request.getRealPath(request.getReque ...

  8. HihoCoder1642 : 三角形面积和([Offer收割]编程练习赛37)(求面积)(扫描线||暴力)(占位)

    描述 如下图所示,在X轴上方一共有N个等腰直角三角形.这些三角形的斜边与X轴重合,斜边的对顶点坐标是(Xi, Yi). (11,5) (4,4) /\ /\(7,3) \ / \/\/ \ / /\/ ...

  9. 关于ng-class中添加多个样式类的解决方案

    想要达到ng-class的效果,有两种写法 1.class=“{{class}} class1 class2” 2.ng-class="{true: 'active', false: 'in ...

  10. linux 中spfvim安装

    1. 安装 git 1.1 安装依赖的包: curl          curl-devel     zlib-devel         openssl-devel      perl      c ...