加载中…
个人资料
林老师的LOGO_PYTHON_C语言之家
林老师的LOGO_P
YTHON_C语言之家
  • 博客等级:
  • 博客积分:0
  • 博客访问:45,449
  • 关注人气:563
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

繁荣昌盛2025

(2025-04-14 09:34:27)
标签:

信息学竞赛

林老师

mswlogo

fmslogo

分类: WinXP~7~8~10运行Logo语言
繁荣昌盛2025
   繁荣昌盛2025
      2025年是我们伟大的社会主义祖国连续繁荣昌盛、国富民强、欣欣向荣的又一年。
      有编程爱好者注意到,2025是一个完美的数字,2025是一个“完全平方数”,等于45的平方。* 湖地区的编程爱好者发现,2025还可以是多个“完全平方数”的和。例如:2025=36*36+27*27,等等。但是全部找到这些“多个”完全平方数的和,例如找到1个~5个完全平方数的和,虽然好玩,却涉及到巨量的数学计算,即便是用计算机编程计算,程序也要将近7分钟的时间才能完成计算。
      用LOGO语言编程计算的结果表明,数字2025等于
      1个完全平方数的和的答案有1个:45
      2个完全平方数的和的答案有1个:36 27
      3个完全平方数的和的答案有9个:35 28 4、44 8 5、40 20 5、42 15 6、33 30 6、40 19 8、40 16 13、37 20 16、29 28 20。
      4个完全平方数的和的答案有66个……
      1~5个完全平方数和的答案共有289个。
      下面就是用LOGO语言编程求解所有1~5个完全平方数的源程序。显然,可以据此进行扩充编写出求解更多个(例如6个、7个或更多)完全平方数的和的程序——当然,计算起来的时间要更长一些。

to frcs2025  ;繁荣昌盛的2025
  make "t0 timemilli  ;开始计时
  make "n 0           ;答案开始计数
  for[i 45 1 -1][     ;产生1-5个平方数
    for[j :i-1 0 -1][
      for[k :i-1 0 -1][
        for[l :i-1 0 -1][
          for[m :i-1 0 -1][
           if (and :j>=:k :k>=:l :l>=:m         
             (:i*:i+:j*:j+:k*:k+:l*:l+:m*:m)=2025)[
             make "n :n+1
             (type char 40 :n char 41 char 45 2025 
              char 61 :i char 42 :i)
             if :j>0[(type char 43 :j char 42 :j)]
             if :k>0[(type char 43 :k char 42 :k)]
             if :l>0[(type char 43 :l char 42 :l)]
             if :m>0[(type char 43 :m char 42 :m)];输出答案
             pr[]]]]]]]
  make "t timemilli
  (pr "总共用时  (:t-:t0)/1000 "秒钟)  ;显示计算时间
end


frcs2025
(1)-2025=45*45
(2)-2025=44*44+9*9+2*2+2*2
(3)-2025=44*44+8*8+5*5
(4)-2025=44*44+8*8+4*4+3*3
(5)-2025=44*44+7*7+6*6+2*2
(6)-2025=44*44+6*6+6*6+4*4+1*1
(7)-2025=43*43+12*12+4*4+4*4
(8)-2025=43*43+10*10+6*6+6*6+2*2
(9)-2025=42*42+16*16+2*2+1*1
(10)-2025=42*42+15*15+6*6
……
(100)-2025=36*36+20*20+15*15+10*10+2*2
(101)-2025=36*36+20*20+13*13+12*12+4*4
(102)-2025=36*36+20*20+12*12+11*11+8*8
(103)-2025=36*36+18*18+18*18+9*9
(104)-2025=36*36+18*18+17*17+10*10+4*4
(105)-2025=36*36+18*18+16*16+10*10+7*7
(106)-2025=36*36+18*18+15*15+12*12+6*6
……
(200)-2025=31*31+24*24+18*18+10*10+8*8
(201)-2025=31*31+24*24+16*16+14*14+6*6
(202)-2025=31*31+22*22+20*20+12*12+6*6
(203)-2025=31*31+22*22+18*18+16*16
(204)-2025=31*31+20*20+18*18+18*18+4*4
(205)-2025=31*31+20*20+18*18+14*14+12*12
(206)-2025=30*30+28*28+18*18+4*4+1*1
……
(280)-2025=26*26+24*24+20*20+18*18+7*7
(281)-2025=26*26+22*22+21*21+18*18+10*10
(282)-2025=26*26+20*20+20*20+18*18+15*15
(283)-2025=25*25+24*24+22*22+18*18+4*4
(284)-2025=25*25+24*24+22*22+14*14+12*12
(285)-2025=25*25+24*24+20*20+18*18+10*10
(286)-2025=24*24+23*23+22*22+20*20+6*6
(287)-2025=24*24+23*23+20*20+18*18+14*14
(288)-2025=24*24+22*22+22*22+20*20+9*9
(289)-2025=24*24+22*22+22*22+16*16+15*15
总共用时 347.352 秒钟


繁荣昌盛2025
繁荣昌盛2025


LOGO编程画出来的动画

繁荣昌盛2025

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有