加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

LOGO编程题 相当“简单”的难题——画18角星(1)★★★

(2010-09-03 08:18:23)
标签:

中小学信息技术

编程

logo语言

分形

林正山老师

教育

科普

趣味科学

杂谈

分类: LOGO语言画图及计算编程题

LOGO编程题 相当“简单”的难题——画18角星(1)★★★★
LOGO编程题 <wbr>相当“简单”的难题——画18角星(1)★★★

    这是这个系列问题答案中的第一个。

    解决这一类型问题的最关键的思路是:这些多角星的两条边的长度是不相等的。而标准多角星的所有边长是等长的。
    我们已经知道DRAW HT REPEAT 18[FD 200 RT :K*360/18]能够画出均匀分布的正18边形。其中:K=7时画出的图形的样子更加接近题目给出的图形。

LOGO编程题 <wbr>相当“简单”的难题——画18角星(1)★★★

 


查找这个问题题目的链接
查找这个问题答案1的链接

查找这个问题答案2的链接

查找这个问题答案3的链接

 

 

LOGO编程题 <wbr>相当“简单”的难题——画18角星(1)★★★
    问题在于题目要求的图形18个角之间分布并不均匀。经过分析可以看出,题目所给出的图形中,靠得远的两个角之间的分布角度是靠得近的两个角的分布角度的3倍。按这样的规律清点起来,整个圆周应当分成36个等分。

    其中任意一个角∠BAC=40度(这时正好要RT 140或RT 180-40)。∠BAC所对的弧是80度,剩余的BAC之间的弧是360-80=280度。按每10度1个等分余下28个等分。28/2=14个等分。如果弧AB分配得13个等分、弧AC分配得15个等分,正好把圆的36个等分分配完。

    按这样的“从整圆出发,把圆预先切分成若干个等分,再在这些等分点上连线画多角星”的思路,我们有可能把握同类型的所有图形的规律。
    从上图中可以看出:AB点段对应的是130度的弧。如果已知AB线段的长度为:L,那么这个隐形的圆的半径应该是
    :R=:L/2/SIN (130/2)=:L/2/SIN 65
    在已经计算出:R的值以后,就能计算AC的长度了。AC所对的弧是150度的弧,150度的一半是75度。
    AC=AE*2=2*SIN 75
    所以题目所给出的图形,在已知较短的线条AB长为:L的情况下,画9组B-A-C,再每次接着转弯140度就可以了。
 

LOGO编程题 <wbr>相当“简单”的难题——画18角星(1)★★★
    题目给出的答案使人觉得惊奇:程序正这么简单!


 

    现在有不少LOGO语言研究者及爱好者对林老师的博客予以很大的关注。当林老师的这个题目刚在网络上发表几个小时,就有jin_ming朋友发来这样一个程序:

LOGO编程题 <wbr>相当“简单”的难题——画18角星(1)★★★

 

    这个程序有几个重要的技巧:

    画18角星转弯的角度是 RT 360*7/18即RT 140;

    画18角星的线段长度分别是:A及:A+:K。

    如果输入18JX 200 13.16时,就能画出符合题目要求的图形。

    这里的13.16是从哪里来的呢?
    200*1/2/(SIN 65)*2*(SIN 75)-200=13.16

    就是说画这个图形的两条线的长度是200、213.16。

 

    应该说,jin_ming朋友编写的这个程序是相当好的。对于相同的:A,取值不同的:K,画出来的图形形态是完全不一样的。这是相当不容易的。对于jin_ming朋友的编程技巧及热心,林老师在这里表示祝贺并感谢。

 

    但是,林老师在原题目中指出:

    例图其实仅仅是一个大类图形的代表。把它的作图规律搞清楚了,还能画出许多漂亮的图形。这里面内在的规律到底在哪里呢?还要看看后面两次答案的解说。

   

 

这里是新颖有趣的LOGO、DEV-C++语言之家

欢迎评论 欢迎转载

 

查找林老师博客最便捷的方法:

  百度、谷歌、搜狗、搜搜、雅虎、有道搜索引擎中输入

   林老师 LOGO 就能找到林老师博客文章了

 

查阅林老师最新发表文章的链接:

      http://blog.sina.com.cn/lzs2099 
 
 

快速检索数百篇博客提高阅读效率的链接:

 《LOGO语言简明教程》及初学者题库
  《LOGO语言画图编程题》目录
  LOGO及DEV-C++计算编程题》目录
  《LOGO竞赛试题及解题分析指导》目录
  《LOGO语言编程新理念及编程技巧》目录
  《奥数及趣味数学问题》目录
  《LOGO语言竞赛教程·习题集内容剖析》目录
  《林老师话说天南地北》目录 

   初学者题库及编程技巧分析

查看林老师拍摄及推荐的照片的链接

 

林正山老师邮箱:  linzhengshan@21cn.com

因网络拥挤“纸条”常不能及时打开查阅。有信息尽量使用“评论”或邮件。 

 

需要LOGO系统文件常用表格工具文件及DEV-C++系统文件的可以发邮件给林老师

 

声明:
    林正山老师发表的文章及照片,媒体、网站或出版物未经本人许可谢绝进行任何形式的删节、改编、重组及转载。

    允许个人博客按原文(含图片及附注)进行完整转载,转载时敬请注明本博作者姓名、文章原始出处,并以链接形式标明来源。

0

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

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

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

新浪公司 版权所有