您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 数据通信与网络 > 朕培创客-高中-Scratch-课件:01-初识编程
1homebackfirstprevnextlast本节目标•Scratch编程绘制正方形•什么是程序和编程•什么是编程语言•编译执行和解释执行•编译器和解释器•Bug和Debug•Scratch编程语言•算法和算法设计2homebackfirstprevnextlast第一个程序•绘制一个边长为100的正方形究竟什么是程序?什么是编程?3homebackfirstprevnextlast先看个故事•一个文化人,他有一个仆人是聋子……•幸好他们都不是瞎子……•仆人也认识几个有限的词汇……•主人想让仆人做点事,他应该怎么做?任务书1、….2、…4homebackfirstprevnextlast程序就是计算机的任务书•现在你就是主人,计算机就是你忠实的仆人•你要是聪明,就将任务交给仆人去做•否则…,你就自己干活,让仆人歇着去吧…程序1、….2、…5homebackfirstprevnextlast编程和语言•编程就是用人和计算机都能够理解的语言为计算机编制完成任务所需的任务书•计算机只认识0和1,所有任务书必须由0和1组成,计算机才能看懂•因此有两个办法编写任务书–直接用0和1组成的语言编写,这样的语言叫机器语言–用人熟悉的语言编写任务书,然后再找一个翻译6homebackfirstprevnextlast编程语言有很多种•可以用不同的语言编写程序,完成相同的任务,但是不同的语言需要不同的翻译C语言翻译1机器语言010111JAVA语言翻译2其它语言…翻译n7homebackfirstprevnextlast两种完成任务的方式•编译执行–一次将整个程序翻译成机器语言,然后计算机执行程序,完成任务–这时的翻译叫“编译器”–任务书哪怕有一丁点“翻译”看不懂,翻译工作也不能完成,程序当然也不能执行,这时叫发生了“编译错误”•解释执行–将程序翻译一句,计算机马上执行一句–这时的翻译叫“解释器”–翻译看懂一句,翻译一句,执行一句。遇到不懂的语句,就会停止工作–解释执行通常会比编译执行慢一些8homebackfirstprevnextlast编程的一般流程任务期望结果编写/修改程序编译/解释执行实际执行结果编程中有很多问题会导致程序结果与期望不一致,这些问题叫bug(虫子),检查程序消除问题的过程叫debug(除虫)或调试9homebackfirstprevnextlast编程语言•语言由一定数量的词汇(指令集)和语法组成–指令告诉计算机要完成什么具体的操作(任务)–语法决定指令可以通过什么方式和顺序组合在一起10homebackfirstprevnextlastScratch编程语言3-1•语法–将代表指令的图块组合在一起的方式–凡是允许的,就是正确的–因此,Scratch编程语言中没有语法错误–但是在其它编程语言中,语法错误是初学者最常犯的错误–这也是我们为什么以Scratch作为第一门编程语言的一个重要原因11homebackfirstprevnextlastScratch编程语言3-2•指令–分为动作、外观、声音、画笔、控制、侦测、数字和逻辑运算、变量八种类型–每类指令通过不同颜色的图块表示12homebackfirstprevnextlastScratch编程语言3-3有的指令很简单有的指令还有参数,参数告诉指令任务的细节,比如10代表移动的距离;参数有的需要输入,有的需要选择(“面向”中用黑三角表示、画笔颜色设定中通过不同颜色的小正方形来表示)13homebackfirstprevnextlast让代码尽量简洁•同一任务,完成的方法有很多种,程序的写法也有很多种;•学会使用“重复执行”,当主人才会很轻松•“重复执行”和其内部指令构成“循环结构”14homebackfirstprevnextlast怎样画正三角形?2-1•从一个点,沿着某个方向出发,经过n次旋转又回到原来的方向,总共旋转了多少度?360度,对不对?15homebackfirstprevnextlast怎样画正三角形?2-2•正方形旋转了4次,每次旋转角度相同,因此每次旋转90度•正三角形需要旋转几次?每次旋转多少度?16homebackfirstprevnextlast怎样画正多边形?•因为正多边形,假设有n个边,每次旋转的角度都是相同的,所以每次旋转的角度等于360/n,对不对?现在明白了吗?17homebackfirstprevnextlast你能画圆吗?•每次前进一小步,旋转一个小角度,走下来就是圆。对不对?•实际画的是边长为2的正180边形。直与曲是可以相互转换的。直线短了,就变为曲。曲线长了,就变为直。都知道地球是圆的,但我们的马路很直,对不对?18homebackfirstprevnextlast算法和算法设计•把任务分解为计算机可以理解的,能够按照一定顺序执行的步骤或操作的过程,叫算法设计•算法:完成任务所需要的,由计算机可以理解的基本操作及规定的执行顺序所构成的完整的解题步骤•编程的核心是“算法设计”,你认为这种说法对吗?19homebackfirstprevnextlast算法的7个特征4-1•1、有穷性–算法的有穷性是指算法必须能在执行有限个步骤之后终止,能够结束,不能够无限执行下去•2、确切性–算法的每一步骤必须有确切的定义,必须是计算机可理解执行的操作20homebackfirstprevnextlast算法的7个特征4-2•3、输入(Input)–一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件•4、输出(Output)–一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的21homebackfirstprevnextlast算法的7个特征4-3•前面的程序都没有输入,只有输出•下面的程序根据输入的边数画正多边形,既有输入也有输出22homebackfirstprevnextlast算法的7个特征4-4•5、可行性(Effectiveness)–算法中即每个步骤都可以在有限时间内完成;(也称之为有效性)•6、高效性(Highefficiency)–执行速度快,占用资源少•7、健壮性(Robustness)–对不同的输入数据都能够响应正确23homebackfirstprevnextlast总有些东西是不变的•进入编程的世界,你会发现:–编程语言有很多很多–可以编程解决的问题有很多很多–但,算法设计的思想和技巧是不变的–这也是我们《程序设计基础》这门课中最核心的内容24homebackfirstprevnextlast总结•Scratch编程绘制正方形•什么是程序和编程•什么是编程语言•编译执行和解释执行•编译器和解释器•Bug和Debug•Scratch编程语言•算法和算法设计
本文标题:朕培创客-高中-Scratch-课件:01-初识编程
链接地址:https://www.777doc.com/doc-1824279 .html