新疆Scratch少儿编程教学贴,培养逻辑思维,由浅入深,长期更新
新疆吧
全部回复
仅看楼主
level 6
本帖将从简单的游戏制作到复杂的数据结构及算法,希望想要学习编程的人能提供一点帮助,内容从浅到深循序渐进,程序从简单到复杂,本帖是一个教学推广帖,教大家学习使用Scratch,不会一味地追求高深或复杂的算法,只为培养大家对编程的兴趣,为大家提供一个方向。但是学习的后期我会更新一些复杂的数据结构算法,以便大家能拓展知识。主要涉及的内容包括:
1、学习简单的游戏,本帖为编程教学贴,学习制作游戏是为了让大家更好的了解程序设计思路及各种语法,所以本帖的游戏作品都比较简单而且很多都是网上的作品,但都是我在实际教学过程中用到的,短小而精悍。
2、小学、初中数学知识,编程是对数学的扩展,可以更好地将数学知识应用到程序中,在程序中能更好的直观感受到数学的乐趣,而不是填鸭式的学习数学,不知所云!但是其实你只要有小学数学知识也可以更好的学习scratch。
3、程序中变量及列表的使用。
4:基本算法:枚举、位运算、排序、分治
5:数据结构、链表、栈、队列、二叉树和堆
6:高级数据结构算法:排序搜索算法、动态规划、深度优先搜索、广度优先搜索、矩阵乘法等。
以上内容难度依次递进,本帖将陆续更新。
2020年09月22日 12点09分 1
level 6
第一课:蚂蚁寻迹
课程内容:通过此课程学习scratch的运动模块、重复执行命令、“如果 否则”选择结构命令。
学习内容:学习迭代思想,逻辑判断命令,学习结构控制,拓展至流程图
动画界面:
代码界面:
角色中心点的设置:在造型里要对角色进行中心点设置,如设置不对可能达不到想要的动画效果
2020年09月22日 12点09分 2
level 6
第五节课:理解程序中的数量
课程内容:变量与常量
学习内容:进行+-*/运算
常量与变量(constant and variate)是数学中反映事物量的一对范畴。常量亦称“常数”,是反映事物相对静止状态的量;变量亦称“变数”,是反映事物运动变化状态的量。
在数学中,变量指代x,y,z等,而常量指代的是一切自然数。
在计算机中,变量可以狭义的理解为是一个有范围的容器,而常量则定义容器里物质的数量。容器内物质的数量是可变的。例如,玻璃杯里的100g水,玻璃杯是变量,而100是描述玻璃杯中水的数量的数。当然他也可以是200、300、0或-100都可以。
所有的变量在用前都要赋值,0或者具体有意义的数。.
动画界面:
建立变量
对变量进行赋值,并进行加减乘除运算
2020年09月22日 12点09分 3
level 6
第七节课:画笔的使用
课程内容:学习鼠标跟随,画各种几何图形
学习内容:学习使用画笔模块,学习重复执行命令的使用
1、画笔跟随
首先新建角色中载入画笔,在造型中将画笔中心点设置为笔尖
动画演示
画笔跟随代码
可以给画笔加点效果
2、画四边形
动画演示
代码1不利用重复执行命令的代码
代码2:利用重复执行命令的代码,代码的长度比代码1缩减很多,
而且更加直观,减少了编程的工作量
2020年09月22日 12点09分 5
level 6
第六节课:简单的算法
课程内容:计算三角形周长、面积,交换2个变量的值
学习内容:
1:计算圆的面积及周长
首先新建四个变量PI、半径、面积、周长,然后就可以设定公式计算了
2:交换2个变量的值
假设 X=12,Y=1,如何交换两个数的值?上一节课讲过,变量就相当于容器,可以再次把它想成一个水杯,而12和1代表杯中水的数量。
方法1:在生活中交换两杯水,就需要再额外增加一个杯子,在程序里就是再新增一个变量Z,程序如下:
方法2:相减法
以上方法均可以实现2个变量的交换。
程序中用到的变量
2020年09月23日 10点09分 6
如何理解交换变量中的相减法,将变量X,Y看成2个杯子,X杯子有12升水,Y杯子有1升水,然后执行X=X+Y,将两杯水都倒入X杯,这时X中就有13升水,然后从X杯中倒出12升给Y杯,Y=X-Y,Y杯有12升水,X杯就剩1升水。此算法相比交换方法1的意义在于执行时间相同的情况下更节省内存空间.
2020年09月23日 10点09分
在计算机语言里 “=”是赋值语句,X=Y,表示将Y的值赋给X,也可以是X=X+Y,表示将X+Y的值重新赋给X,将“=”右边的值赋给“=”左边的变量。“==”这个符号表示相等的意思。
2020年09月23日 10点09分
level 6
第八节课:画笔的使用
课程内容:通过变量的会用,画各种几何图形
学习内容:学习使用变量,通过变量改变程序的动作(图形的边数、边长及角度),学习使用单层循环在程序中的作用
1、画各种多边形
五边形
四边
三边形
20边
程序代码
2020年09月28日 13点09分 7
level 6
在上面 代码的基础上再增加一个外层循环,就可以画出更加好看复杂的图形,各位可以不妨一试
2020年09月28日 13点09分 8
level 6
第九节课:画笔的使用
课程内容:利用循环绘制网格
学习内容:加深坐标在程序中的应用,比较画横线和竖线不同的方法,理解循环在程序中的应用
程序效果:
程序代码:
2020年10月01日 13点10分 10
level 6
第10课:制作赛车游戏
课程内容:利用坐标知识、变量、循环命令、选择结构、克隆命令、制作赛车游戏
学习内容:学习克隆命令的使用,学习变量在游戏制作中的作用。今天的这款赛车游戏相信很多人都玩过,在当年卡带流行的时候,这是一个很经典的赛车游戏。如果自己能做出来,是不是一个很有成就感的事!。
游戏画面
:
角色:游戏有四个角色,角色名:赛车为我们操控的角色。道路和道路2为背景,保证背景能连续不断地出现在游戏中。角色 赛车2则为电脑小车,需要躲避它,游戏结束的条件是碰到赛车2.
用到的变量:
赛车代码
道路代码
道路2代码:
赛车2代码
2020年10月04日 16点10分 13
level 6
第11课:成绩查询
课程内容:利用条件判断语句"if else"制作小程序
学习内容:if语句是指编程语言(包括c语言、C#、VB、java、汇编语言等)中用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一。
程序界面:
代码1:
代码2:
比较代码1和代码2 的不同。
条件判断语句流程图
2020年10月14日 14点10分 16
level 6
第12课:求三个数的最大值
课程内容:任意给定三个数,然后求出其最大值或最小值
学习内容:新建变量,学习随机数的运用,学习逻辑关系表达式“逻辑与”。
程序界面:
代码:
2020年10月16日 15点10分 17
level 6
第13课:模拟“抢滩登陆”
课程内容:“”抢滩登陆”类型的程序
学习内容:加深运动模块的使用、克隆命令的使用、条件判断语句的使用,变量的使用。
共用的角色:碉堡、武器、子弹、瞄准镜和
程序界面:
角色界面:
武器代码:
子弹代码:
瞄准镜代码
2020年11月15日 14点11分 18
level 6
第14课:了解迭代
课程内容:变量自增,计算累加和
学习内容:迭代法也称辗转法,是一种不断用变量的旧值递推新值的过程,跟迭代法相对应的是直接法(或者称为一次解法),即一次性解决问题。迭代算法是用计算机解决问题的一种基本方法,它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值,迭代法又分为精确迭代和近似迭代。比较典型的迭代法如“二分法”和"牛顿迭代法”属于近似迭代法。
程序界面:
新建变量,sum,i
爬楼层程序
从1加到100,
2020年11月21日 16点11分 19
level 6
第15课:了解遍历,2种循环类型
课程内容:求100以内能被3和5整除的数。求完全平方数
学习内容:遍历指按一定规则(从大到小,从小到大,或其他)对一组数,每一个均方问一次。“while”和“do while”型循环的区别 (“重复执行()次”和“重复执行直到”的区别 )
程序界面:
求完全平方数
求100以内能被3和5整除的数
2020年11月25日 12点11分 20
level 6
第16课:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?课程内容:程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排列
学习内容:3重循环,逻辑与,遍历,学习循环遍历的模板代码
程序界面:
第一种方法
判断2个数不相等的代码,筛选掉不相符的情况
第二种方法
2021年01月05日 10点01分 21
1 2 尾页