zoukankan      html  css  js  c++  java
  • 水仙花数

       /*
                水仙花数
                    如果一个三位数 个位,十位,百位的立方和,等于这个数值,就称为水仙花数
                    求 所有 3位数中 那些数 是 水仙花 数
                思路 : 本质是 判断 123 是否是水仙花数
                    就是 1的立方 + 2 的立方 + 3 的立方 == 123 本身

                关键是 如何获取 3位数 每一位上的数值
                
            */

            var num = 123;

            // 百位数值  num是123 num除以100 是  1.23  然后 parseInt() 获取整数部分 就是 1
            var a = parseInt( num / 100 );
            console.log(a);

            // 十位数值 
            // 方法1 num是 123 减去 百位数值 a*100 也就是 123-1*100 结果是 23
            // 结果 除以 10 也就是 23/10 是 2.3 再对结果取整 就是 2
            // var b = parseInt( ( num - a*100 ) / 10 );

            // 方法2 num 对 100 求余数 123 % 100 余数就是 23
            // 结果 除以 10 也就是 23/10 是 2.3 再对结果取整 就是 2
            var b = parseInt( (num % 100) / 10 );
            console.log(b);

            // 个位数
            // 方法1 : num 减去 a*100 减去 b*10 结果就是 个位数值
            // var c = num - a*100 - b*10;

            // 方法2 : num 对 10 求余数 , 结果就是 个位数值
            var c = num % 10;
            console.log(c);

            // 现在只要随机生成 100-999的所有三位数值
            // 使用上述方法,获取生成数值,百位,十位,个位的数值
            // 然后进行判断,是否符合条件即可

            for(var i = 100 ; i <= 999 ; i++){
                var a = parseInt( i / 100 );
                var b = parseInt( (i % 100 ) / 10 );
                var c = parseInt( i % 10 );
                if(a*a*a + b*b*b + c*c*c == i){
                    console.log(`数值${i}是水仙花数`);
                }
            }
    右侧打赏一下 代码改变世界一块二块也是爱
  • 相关阅读:
    数据结构之线性表
    在Swift中,如何像Objective-C定义可选接口?
    ios开发--常用宏定义(部分转)
    ios开发--KVO浅析
    2015年 移动开发都有哪些热点?
    HTML5七大优势“逼宫”APP
    ios 中使用SBJson拼接和解析json
    iOS-动态调整UITableViewCell的高度
    iOS App Launch Option
    Swift自适应布局(Adaptive Layout)教程
  • 原文地址:https://www.cnblogs.com/ht955/p/14021644.html
Copyright © 2011-2022 走看看