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

复赛上机题:鼠标控制画圆点3

(2022-07-02 10:29:20)
标签:

林老师

pclogo

mswlogo

logo博客

fmslogo

分类: WinXP~7~8~10运行Logo语言
复赛上机题:鼠标控制画圆点 3 FMSLogo解
复赛上机题:鼠标控制画圆点3
      这是鼠标控制画圆点的FMSLogo解。需要说明的是,FMSLogo-MSWLogo的色值7是白色,所以需要避开白色。具体的程序命令是:
                if :s>6[make "s :s+1]  ;避开7白色
这样每点击一次鼠标都能产生有效的随机色点。
      FMSLogo-MSWLogo的鼠标命令是原生命令,不需要自己另外编写无限循环来监测鼠标的操作。命令格式:
      mouseon [make "a mousepos yuan] [pu] [mouseoff] [] []
    题头的动画图形就是用FMSLogo编写输出的。

to sbyd ;鼠标控制圆点
  cs ht
  setpensize 3 setpc 1 ;方框蓝色宽度3
  pu setxy -200 -200 pd   ;移动到画框处
  repeat 4[fd 400 rt 90]  ;画400×400方框
  pu setpensize 40    ;圆点直径40
  mouseon [make "a mousepos yuan] [pu] [mouseoff] [] []
end

to yuan
  make "x first :a  ;分解出:X坐标值
  make "y last :a   ;分解出:Y坐标值
  (pr :x :y) 
  if and (and :x<180 :x>-180) (and :y>-180 :y<180)[  ;保证圆点在框内的坐标
     make "s 1+random 15    ;产生1~15随机颜色
     if :s>6[make "s :s+1]  ;避开7白色
     setpc :s               ;设置点的颜色
     pu setpos :a pd fd 1 bk 1] ;在框内点击画一个点
end

更多的复赛上机题及源程序应查找阅读《复赛详解》
《复赛详解》的资料出处请在下面查找

复赛上机题:鼠标控制画圆点3

复赛上机题:鼠标控制画圆点3

复赛上机题:鼠标控制画圆点3




0

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

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

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

新浪公司 版权所有