2011种子杯复赛试题——简单绘图语言.PDF

2011种子杯复赛试题——简单绘图语言.PDF

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2011种子杯复赛试题——简单绘图语言

2011 种子杯复赛试题种子杯复赛试题 ——简单绘图语言简单绘图语言 1 题目简介题目简介   Logo 语言是一种直观的绘图语言,在 1966 年由西摩尔·派普特和 Wally Feurzeig 在 BNN 设 计。通过向海龟发送命令,用户可以绘制出各种各样的图形。你的任务是编写一个简化版的 Logo —— 不妨称之为 SLogo ,可以实现绘图并输出为 png 和一种矢量图格式。 2 程序功能描述程序功能描述   SLogo 不需要与用户交互,只需要实现成一个命令行程序,读取 Logo 程序源代码(*.lgo),解 析并执行,然后把结果输出。   初始时,海龟在坐标原点 (0, 0) 。画布的大小为:-499 = x = 500 ,-499 = y = 500 ,即大小为 1000 x 1000 。单位是像素(px),或者点(pt),根据你选用的图像格式的最常用的单 位。海龟有 3 个状态需要保存: • 当前位置坐标 (x, y) 。初始为 (0, 0) 。 • 当前朝向:以 y 的正方向为 0° ,以顺时针方向为正方向。单位为度。初始时为 0° 。 • 当前是否落笔:若落笔,则海龟的移动产生轨迹,否则不产生。初始时为落笔。   海龟的移动相对于它当前所在的位置。比如命令“FD 100”让海龟前进 100 像素,“RT 90”让海龟 右转 90 度。所有命令、标识符、关键字、子程序名、变量名不区分大小写所有命令、标识符、关键字、子程序名、变量名不区分大小写 。   画图时使用的颜色均为黑色。 2.1 Logo 程序实例程序实例   以下为一个画正方形的程序: FD 100 RT 90 FD 100 RT 90 FD 100 RT 90 FD 100 RT 90   由于命令是重复的,可以用 REPEAT 语句简化为: REPEAT 4 [FD 100 RT 90] 2.2 数据类型和基本文法数据类型和基本文法   SLogo 里主要有两种数据类型:数值型和字符串型。 1 空白符空白符   在 SLogo 中,空白符只有两种:空格和 tab 。一行开头和结尾处允许有若干空白符。 字符串字符串   类似 C 语言中的字符串,用一对双引号引起来。用 \ 转义双引号,用 \\ 转义反斜线。字符串中不字符串中不 能有换行符能有换行符。注意注意 ,\n 、\t 等转义字符在 C 语言中有特殊含义,但在 SLogo 中没有没有 ,如果出现则保持 原样。 数值型常量数值型常量   SLogo 中不区分整数和浮点数,运算时都当作浮点数处理。   与一般语言中的数值表示法类似,形如: • 56 • -56. • .56 (即 0.56 )   都是合法的数值型常量。 数值表达式数值表达式   支持的运算符有:+ - * / 小括号、正负号。运算符的含义及优先级与 C 语言相同,但除法运算都 是浮点除法。   例如: • 10 * (1 + 9) • -89 • 53 // 应该理解成 5 - (--3) ,即 5 后面是一个减号,3 的前面有两个负号。   都是合法的数值表达式。表达式各元素间可以加入任意多的空白符。 注释注释   使用分号(;)作为单行注释的开头。类似 C++ 中的“//” ,分号后面直至换行符之间的部分都看作 注释,在解析时应忽略。 标识符标识符   由字母、数字和下划线(_ )组成,但开头不是数字的字符串是合法的标识符。如“name” ,标识符 可用作变量名和过程名。标识符不区分大小写。 2 2.3 全局变量全局变量 定义与赋值定义与赋值   用 make 命令对全局变量赋值:MAKE 变量名 变量值。SLogo 是动态类型的语言,变量赋值时不 需要指定类型,运行的时候自动检测。这里用作“变量名”的可以是字符串变量,也可以是字符串常量, 变量名应该是合法的标识符。变量值可以是数值或者字符串。 Make N 3 Make I 3 + 3 make NAME test   都是合法的,前两条命令定义了两个数值型变量,

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档