机器人卡雷尔学习C语言.pdfVIP

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
机器人卡雷尔学习 C 语言 新疆农业大学计算机与信息工程学院 张太红、陈燕红编著,2013 年 9 月 斯坦福大学计算机科学系 埃里克·罗伯茨著 (Java版),2005年9月 目 录 第一章 机器人卡雷尔简介 1 1.1 什么是卡雷尔? 1 1.2 卡雷尔的世界 2 1.3 卡雷尔能做什么? 2 1.4 卡雷尔及面向过程的编程范式 3 1.5 实践经历的重要性 3 1.6 编写及运行卡雷尔程序 4 第二章 卡雷尔编程 11 2.1 解决更有趣的问题 13 2.2 定义新函数 14 2.3 问题分解 18 2.4 选择正确的分解 20 第三章 卡雷尔控制语句 22 3.1 条件语句 22 3.2 迭代语句 24 3.3 解决普适问题 26 第四章 逐步求精 30 4.1 逐步求精练习 30 4.2 自顶向下设计的基本原则 31 4.3 精练第一个子问题 31 4.4 下级级别子问题的编码 32 4.5 事前条件和事后条件 33 4.6 收尾工作 34 第五章 算法 36 5.1 解决一个迷宫问题 36 5.2 锥块数量翻倍问题 37 第六章 超级卡雷尔(SuperKarel ) 40 6.1 右转(turnRight )和掉头(turnAround )函数 40 6.2 使用颜色 40 6.3 随机行为 40 6.4 逻辑操作 41 附录A 卡雷尔速查表 42 第一章 机器人卡雷尔简介 上世纪70年代,斯坦福大学的毕业生里奇·帕蒂思(Rich Pattis )认为如果 学生能在一个简单的环境中学习程序设计的基本思想,而不是纠缠于大多数编程 语言的复杂特性将会有助于程序设计基本原理的教学。受麻省理工数学家西 摩·佩伯特 (Seymour Papert )主持的 LOGO (一种类似于LISP 的程序设计语言) 项目成功的启发,里奇·帕蒂思设计了一个启蒙式编程环境。该环境中有一个机 器人,学生在此编程环境中指导这个机器人去解决一些简单问题,为了纪念捷克 剧作家卡雷尔·恰佩克 (Karel Capek ,他1923的剧作《罗森的通用机器人》 (Rossum’s Universal Robots )创造了robot这个英语词汇),该机器人名叫卡雷 尔(Karel)。卡雷尔机器人项目曾经相当成功,该项目在美国各大学用于计算 机科学导论的教学,以至于里奇·帕蒂思的配套教材售出10多万套。一届又一届 的CS106A (程序设计方法学课程)学生通过挑战卡雷尔的性能学会了计算机程 序工作的机理。好景不长,上世纪90年代中期,我们使用的卡雷尔机器人模拟器 停止工作了。当然我们很快得到了可以在西斯解释器(Thetis interpreter ,一种 C语言解释执行器)中运行的卡雷尔版本。但是,2004年CS106A课程从C语言转 向Java语言,卡雷尔再次停摆。三个学期之后,卡雷尔的空白由尼克 ·帕兰特(Nick Parlante )的Binky world填补了。重新设计实现的卡雷尔即兼容Java也兼容Eclipse 开发环境,这意味着学生从学习Java课程一开始就可以练习使用Eclipse编辑器和 调试器。2013年,新疆农业大学的张太红教授实现了C语言版的卡雷尔,并完全 兼容了尼克·帕兰特的Java版卡雷尔的游戏世界(Worlds )。 1.1 什么是卡雷尔? 卡雷尔是生活在一个简单世界里的简单机器人,通过向卡雷尔发出一组命 令,你可以指挥卡雷尔在它的世界里执行一定的任务,编制这些命

文档评论(0)

celkhn5460 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档