for循环练习题1——水仙花数】的更多相关文章

/*输出所有的水仙花数,所谓水仙花数是指一个3位数,其各个位上数 字立方和等于其本身. 例如: 153 = 1*1*1 + 3*3*3 + 5*5*5 */class ForTest3{ public static void main(String[] args){ int num1 = 0;//百位 int num2 = 0;//十位 int num3 = 0;//个位 for(int i = 100; i < 1000; i++){ num1 = i/100;//获取三位数中的百位数字 nu…
废话不说直接进入正题:传说中的水仙花数就是一个三位数的各个位数的三次方之和就是这个数本身例如153=1*1*1+5*5*5+3*3*3. 好,开始解题:首先,题中已经说了水仙花数是一个三位数,也就是说我们需要定义一个循环在100到1000中一个个来验证它是不是水仙花数: 然后就是核心代码了,凭空想的话很难找到思路,至少对我这个菜鸡来说是这样,那怎么办呢?给题上的例子用起来啊,那问题又来了,怎么把153和等号右边的玩意儿联系起来.153,有1有5还有3,右边也是有1有5还有3:取模运算符吧3%10…
## 一.for循环语法:for(开始区间: 结束区间; 修改循环条件){ 循环体:} > 开始区间:初始化表达式(确定开始)int i = 1; > 结束区间:逻辑表达式(确定结束) int i <= 5;> 修改循环条件:控制循环条件的表达式,改变变量的值 i++ 执行流程: > 1. 初始化表达式,只执行1次> 2. 逻辑表达式 如果为true,则执行循环体 如果为false,则结束循环> 3. 当循环体执行完后,执行修改循环条件的语句> 4. 接下来…
水仙花数 153 == 3**3 + 5**3 + 1**3 点击查看笔者代码 for i in range(100, 1000): a = i % 10 b = i // 100 c = (i // 10) % 10 if a**3+b**3+c**3 == i: print(i) 假设一个数k,10**n <= k < 10**(n+1) 最高位 = k // 10**n 最低为 = k % 10 温馨提示:一共有四个水仙花数哦…
# [Python练习题 009] 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,# 其各位数字立方和等于该数本身.例如:153是一个“水仙花数”,# 因为153=1的三次方+5的三次方+3的三次方.# ----------------------------------------------------------------------# 把任意三位数的百位.十位.个位拆解出来就好办了.# 思路:将任意3位数除以100再向下取整,# 即可得到百位数.将这个3位数减去(百位数*1…
代码: /* * 需求:在控制台输出所有的”水仙花数” * * 分析: * 什么是水仙花数呢? * 所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身. * 举例:153就是一个水仙花数. * 153 = 1*1*1 + 5*5*5 + 3*3*3 * * A:三位数其实就告诉了我们水仙花数的范围 * 100-999 * B:如何获取一个数据的每一个位上的数呢? * 举例:我有一个数据153,请问如何获取到个位,十位,百位 * 个位:153%10 = 3; * 十位:153/10%10…
水仙花数业内的大家可能听说过,但是对于初学者来讲,对于水仙花数还是比较陌生的. 首先要知道的是水仙花数的计算公式:153=1**3+5**3+3**3: 如何去判定这个数是否为水仙花数,最好的办法就是用for内嵌循环了,因为涉及到了公式所以很多数学逻辑不是很好的兄台,就尴尬了,其实有一个比较简单的数学逻辑来运算,如设定一个1-999的水仙花数, 程序如下: for x in range(1,10):  #百位数的计算 for y in range(1,10):#十位数的计算 for z in r…
第一题:用for循环打印三角形 //第一个 for(var x = 1;x <= 4;x++){ //控制行数 :由 1 到 4 for(var y = 1;y <= x;y++){ //控制循环几遍 document.write("*" + " "); //循环几遍就打印出几个 * :由 1 到 4 } document.write("<br />"); } //第二个 for(var x=4;x>=0;x--){…
什么是水仙花数? 水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153). 分析: 根据定义可知: a*a*a+b*b*b+c*c*c=a*100+b*10+c a∈[1,9]     b∈[0,9]    c∈[0,9]   (这里可以联想一下数字仪表盘,笨办法╭(╯_╰)╭) 代码: #include<stdio.h> int main() { int m, a, b, c; ;a<=;a=a+)//循环1,百位 ;b…
#!/usr/bin/env python# -*- coding: utf-8 -*-print("请输入三位数:")num = input()# 定义常量SumNum = 0# 1.判断当前输入的字符型的数值是否为3位数if len(num) == 3: # 判断数值是否为十进制数据,避免输入的不是数字的字符 if num.isdecimal() is True: # 字符类型for循环时,是以字符串的单个字符输出 for i in num: # 2.求每一位数的3次方的和 Sum…