ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# 26.程序优化 下图第一行有1个正三角形,第二行有2个正三角形,第三行有3个正三角形, 每一行的第1个正三角形是上下对齐的。 小刚想绘制这个图形,便编写了如下图所示的程序,请根据要求优化程序。 ![](http://h.yiniuedu.com/9ce17d93973bb2f6f2be589a2e4ecf92) ![](http://h.yiniuedu.com/bdd0051013ebfc5e09bf71c1a1c5045a) 1.准备工作 (1)保留舞台为默认的白背景; (2)保留默认小猫角色,小猫在舞台中间位置。 2.功能实现 (1)用键盘任意输入一个数字表示行数(考虑到舞台的大小,可以提醒输入的数字在1-9之间),之后小猫会根据输入的行数自动绘制一个多行的图形(如果输入5,那么就绘制5行); ![](http://h.yiniuedu.com/7f46bd197ba48c676560082f8cfd0936) (2)绘制的图形规则为:假设绘制n行,第一行绘制一个三角形,第二行绘制2个三角形......第n行绘制n个正三角形; (3)每行中任意两个正三角形之间都间隔20个坐标值,任意相邻两行的间隔也是20个坐标值,每行的第1个三角形的x坐标值是一样的,即在同一列; (4)要用函数绘制正三角形,用循环嵌套以及函数来优化程序。 >[danger]**标准答案:** **评分标准:** (1)用键盘任意输入一个数字表示行数;(2分) (2)用函数绘制正三角形;(2分) (3)能够根据输入的行数正确绘制图形;(3分) (4)能够将每行的第一个三角形的坐标进行复位;(1分) (5)使用循环嵌套完成程序。(2分) **试题解析:** **参考程序:** ![](http://h.yiniuedu.com/ae8e6572fdb86aa669e3ae77fc06b61a) ![](http://h.yiniuedu.com/6ea8105381f7eb9453a7fccbfc968076) ***** # 27.**十字回文诗(15分)** 十字回文诗,又称为转尾(鳞迭)连环回文诗,是古人创造的一种七言绝句诗 体,由10个字连环往复,读成一首28个字的七绝。以清朝女诗人吴绛雪 《咏四季》中的春为例:**莺啼绿柳弄春晴晓月明**,十个字回环往复,可读成 以下28个字的七绝: 莺啼绿柳弄春晴(前七个字,正序读) 柳弄春晴晓月明(后七个字,正序读) 明月晓晴春弄柳(后七个字,倒序读) 晴春弄柳绿啼莺(前七个字,倒序读) 《咏四季》的另外三首分别为: 夏:**香莲碧水动风凉夏日长** 秋:**秋江楚雁宿沙洲浅水流** 冬:**红炉透炭炙寒冬遇雪风** 请根据十字回文诗的成诗规律,编写程序,将《咏四季》读成的四首七绝通过 列表展示出来。 ![](http://h.yiniuedu.com/61b93e3195e490bdfe0deb43e4767a93) **1. 准备工作** (1) 背景:保留初始背景“背景1”; (2) 角色:隐藏初始角色“角色1”(小猫); (3) 创建列表“咏四季·春”、“咏四季·夏”、“咏四季·秋”、“咏四季·冬”。 **2. 功能实现** (1) 将其中一首十字回文诗生成28字七绝; (2) 将另外三首十字回文诗生成七绝; (3) 使用自制积木对程序进行抽象和化简; (4) 命名规范易读,并为代码添加合理注释. **提示:加粗红色字可供复制。** >[danger]**标准答案:** **评分标准:** (1) 按要求创建列表;(2分) (2) 生成其中一首十字回文诗;(5分) (3)  生成另外三首回文诗;(4分) (4)  使用了自制积木对程序进行抽象和化简;(3分) (5)  变量、自制积木及其参数命名规范,注释合理易读。(1分) **参考程序:** ![](http://h.yiniuedu.com/881b2e9e38fafe7541544e1b759afb9a) ![](http://h.yiniuedu.com/d5237b67cec9194577b372bbf263263f) ***** # 28.绘制花瓣(10分) 下图为六个平行四边形组成的花瓣,请仔细观察图形,编写程序利用循环语句 绘制该花瓣图形(花瓣中心的圆点不用绘制) 。 ![](http://h.yiniuedu.com/d6c005263da1c9ec4067dfe05c55ce46) **1.准备工作** (1)舞台背景为白色; (2)导入下图角色“Pencil”角色,设置造型中心为笔尖(即通过铅笔笔尖部位绘制图形)。 ![](http://h.yiniuedu.com/0c3e5c97878bb438dba175569def3108) 2.**功能实现** (1)利用角色Pencil绘制图形,设置画笔颜色为黑色,画笔粗细为4; (2)设置平行四边形的长(100步)、宽(60步)以及其中一个角的度数(30°),利用函数完成一个平行四边形的绘制; (3)通过循环语句和函数完成上图花瓣的绘制; (4)当按下空格键,擦除绘制的图形。 >[danger]**标准答案:** **评分标准:** (1)导入角色pencil(1分),设置pencil的造型中心为笔尖(1分); (2)正确设置画笔颜色、粗细(1分); (3)正确设置平行四边形的长、宽和角度(1分); (4)利用函数完成一个平行四边形的绘制(2分); (5)利用循环语句完成题目中花瓣的绘制(五个或者六个花瓣都正确)(3分); (6)当按下空格键,擦除绘制的图形。(1分)。 **试题解析:** **参考程序:** ![](http://h.yiniuedu.com/d3600aec4cb7a5d37f33e0590db553e3) ![](http://h.yiniuedu.com/bba3ef858af4feda5aff011bf25d775f) ![](http://h.yiniuedu.com/671e025c8f8c4b78d775ae16627164de) ***** # 29.绳子算法(15分) 故事情境:最近在学绳子算术的小星星非常苦恼,他常常在想,如果有一款 程序能实现根据输入的两根绳子长度,可以把两根长绳截成长度相等的小段后 ,直接求出一共可以截成多少段,每段最长多少米就好了。小猫知道后,决定 设计一个程序帮助小星星走出绳子算术的困境。 **1.准备工作** (1)保留舞台默认白色背景及小猫角色,将小猫角色调整到舞台上合适的位置; (2)建立名为“绳子”的列表用于存储数据。 舞台效果如下图所示。 ![](http://h.yiniuedu.com/dc9b0ad6df517cf4c7d294aa7e4a2bc5) 2.**功能实现** (1)点击绿旗,询问“输入绳子长度”并等待; (2)将输入的绳子长度保存到列表“绳子”后,小猫分别说两根绳子的长度3秒; (3)根据输入的两根绳子长度,设计算法实现:把两根长绳截成长度相等的小段。求出一共可以截成多少段,每段最长多少米; (4)计算完成后,小猫分别说“一共可以截成多少段,每段最长多少米。”3秒。 >[danger]**标准答案:** **评分标准:** (1)点击绿旗,出现询问“输入绳子长度”并等待。(2分) (2)将输入内容加入列表,小猫分别说两根绳子的长度3秒。(4分) (3)编写程序实现:把两根长绳截成长度相等的小段。求出一共可以截成多少段,每段最长多少米。(6分) (4)计算完成后,小猫分别说“一共可以截成多少段,每段最长多少米。”3秒。(3分) **参考程序:** ![](http://h.yiniuedu.com/973f6166e3f62c062498ff5175e05b38)