鱼C论坛

 找回密码
 立即注册
查看: 4914|回复: 61

[每日一练] 算法14 ◉‿◉ 打印1-999之间所有的水仙花数

[复制链接]
发表于 2017-5-20 07:39:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 不二如是 于 2017-5-20 07:39 编辑


                               
登录/注册后可看大图


按照提示,完成代码,秀秀你的编程能力!

不许看答案,否则打屁屁





程序分析:
所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
例如: 153 是一个“水仙花数”,因为 153=1 的三次方+ 5 的三次方+ 3 的三次方。        


源代码:
游客,如果您要查看本帖隐藏内容请回复






如果喜欢,请订阅
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-2-23 00:07:37 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-2-26 10:18:17 | 显示全部楼层
学习一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-12 17:39:16 | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-3-22 16:14:08 | 显示全部楼层
本帖最后由 krrred 于 2018-3-22 16:15 编辑

刚学到水仙花数的例题。来看看大神 的具体思路,谢谢,自己想了好久,头疼死了。
额,我来错地方了。。哈哈。抱歉。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-25 23:48:35 | 显示全部楼层
学习一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-26 16:30:38 | 显示全部楼层
>>> for a in range(0,9):
        for b in range(0,9):
                for c in range(0,9):
                        if a*a*a + b*b*b + c*c*c == a*100 + b*10 +c:
                                print("水仙花数是:"+str(a)+str(b)+str(c))

                               
水仙花数是:000
水仙花数是:001
水仙花数是:153
水仙花数是:370
水仙花数是:371
水仙花数是:407
>>>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-27 22:38:31 | 显示全部楼层
0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-3-30 17:22:07 | 显示全部楼层
学习一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-4-15 01:02:18 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-4-16 16:23:46 | 显示全部楼层
   。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-4-29 11:11:49 | 显示全部楼层
  1.                         window.onload = function(){
  2.                                 var str = '';
  3.                                 for(var i = 1; i <= 999;i++){
  4.                                         if(is_ss(i)){
  5.                                                 str += i + ' '
  6.                                         }
  7.                                 }
  8.                                 alert(str);
  9.                                  
  10.                                 function is_ss(n){
  11.                                         var num = n;
  12.                                         var a = Math.floor(num / 100);
  13.                                         num %= 100;
  14.                                         var b = Math.floor(num / 10);
  15.                                         num %= 10;
  16.                                         var c = num;
  17.                                        
  18.                                         if(n == Math.pow(a,3) + Math.pow(b,3) + Math.pow(c,3)){
  19.                                                 return true;
  20.                                         }
  21.                                         return false;
  22.                                 }
  23.                         };
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-9-22 22:20:45 | 显示全部楼层
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.         <title>14</title>
  5.         <script type="text/javascript">
  6.                 var lista=new Array();
  7.                 for(var i=0;i<10;i++){
  8.                         for(var j=0;j<10;j++){
  9.                                 for(var k=0;k<10;k++){
  10.                                         var hua=Math.pow(i,3)+Math.pow(j,3)+Math.pow(k,3);
  11.                                         if(hua>0 && hua<1000 && (i*100+j*10+k)==hua){
  12.                                                 lista.push(hua);}}}}
  13.                 document.write("1-999间的水仙花有:"+lista);

  14.         </script>
  15. </head>
  16. <body>

  17. </body>
  18. </html>
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-9-23 18:41:26 | 显示全部楼层
emm
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-9-30 23:45:13 | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-10-7 16:20:17 From FishC Mobile | 显示全部楼层
答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-10-9 19:32:36 | 显示全部楼层
本帖最后由 凌乱大帅比 于 2018-10-9 19:55 编辑
  1. var break_up = function(n){
  2.         var h,t,b;
  3.         htb = [];
  4.         if(n>=1 && n<=9){
  5.                 b = parseInt(n);
  6.                 htb.push(b)
  7.         }
  8.         else if(n>=10 && n<=99){
  9.                 t = parseInt(n/10);
  10.                 b = parseInt(n - t*10);
  11.                 htb.push(t,b)
  12.         }
  13.         else if(n>=100 && n<=999){
  14.                 h = parseInt(n/100);
  15.                 t = parseInt(n/10) - h*10;
  16.                 b = parseInt(n) - h*100 - t*10;
  17.                 htb.push(h,t,b)
  18.         }
  19. }
  20. for(var i=0;i<200;i++){
  21.         break_up(i);
  22.         console.log(htb);
  23. }
复制代码


算法部分,一直有bug......

目前就给出一个抓取个十百位的数字的fun()吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-15 16:07:42 | 显示全部楼层
看一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-24 16:22:20 | 显示全部楼层
<!DOCTYPE html>
<html>
        <head>
                <meta charset="UTF-8">
                <title>1-999</title>
        </head>
        <body>
        </body>
        <script>
                var arr=[]
                for(var i=0;i<10;i++){
                        for(var j=0;j<10;j++){
                                for(var k=0;k<10;k++){
                                        if((i*i*i+j*j*j+k*k*k)==(i*100+j*10+k)){
                                                var sum = i*100+j*10+k;
                                                arr.push(sum);
                                        }
                                }
                        }
                }
                document.write(arr);
        </script>
</html>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-28 14:20:55 | 显示全部楼层
  1. function lifang(n) {
  2.         n = Number(n);
  3.         return n * n * n;
  4. }
复制代码
  1. function fF() {
  2.         for (var i = 100; i < 1000; i ++) {
  3.                 var bw = String(i)[0];
  4.                 var sw = String(i)[1];
  5.                 var gw = String(i)[2];
  6.                 if (i == (lifang(bw) + lifang(sw) + lifang(gw))) {
  7.                         document.write(i + "<br/>");
  8.                 }
  9.         }
  10. }
复制代码

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-24 14:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表