本书获得中国科学院科普专项资助,被中国计算机学会推荐为十大科普图书。 本书是六名小学生的编程学习笔记,忠实记录了中科院计算所三位研究员教授孩子们养成数学思维与计算思维的过程。 本书通过25讲编程基础和动手实例,以亲子教育的方式讲述六个基本计算思维,适合6~15岁青少年与老师或家长一起阅读,读者可从书中下载实例代码体验。 3.科学大师和教育名师联袂推荐。
售 价:¥
纸质售价:¥57.00购买纸书
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
版权页
作者简介
指导老师
序言
前言
教师的话一
教师的话二
编程基础篇
第1讲 什么是计算机程序?
一、什么是计算机语言?
二、怎样让计算机听懂Scratch语言?
三、什么是计算机程序?
四、Scratch编程环境简介
五、Scratch积木简介
六、怎样让程序运行起来?
七、第一个Scratch程序“Hello,world!”
八、更复杂的Scratch程序
九、程序里的bug和debug
十、教师点评
第2讲 角色的动作、绘图和音乐演奏
一、知识点
(一)角色的方向
(二)角色变换造型
(三)角色的画笔
(四)角色演奏音乐
(五)角色的遮挡
二、动手练:一个走动的钟表
(一)实验目的
(二)基本思路
(三)编程步骤
(四)实验结果
(五)遇到的bug及改正过程
(六)思考与延伸
三、课后作业
(一)实验一:音乐演奏
(二)实验二:用计算机键盘弹钢琴
四、教师点评
第3讲 变量:角色的记忆
一、知识点
(一)什么是变量?
(二)变量名字的写法
(三)变量有几种?
(四)什么是局部变量和全局变量?
(五)怎样建立变量?
二、动手练:给托球游戏加一个计数器
(一)实验目的
(二)编程步骤
(三)实验结果
三、课后作业
实验:小猫出口算题
四、教师点评
第4讲 循环:重复做动作
一、知识点
(一)什么是循环?
(二)“重复执行”积木的种类
(三)循环的嵌套
(四)写循环的小秘诀
二、动手练:阅兵方阵
(一)实验目的
(二)基本思路
(三)编程步骤
(四)实验结果
(五)思考与延伸
三、教师点评
第5讲 克隆:角色的双胞胎和多胞胎
一、知识点
(一)什么是克隆?
(二)什么时候用克隆?
二、动手练:阅兵方阵列队行进
(一)实验目的
(二)基本思路
(三)编程步骤
(四)实验结果
(五)遇到的bug及改正过程
(六)思考与延伸
三、教师点评
第6讲 条件判断:角色根据情况做动作
一、知识点
(一)什么是条件判断?
(二)多个条件的组合
二、动手练:判断奇偶数
(一)实验目的
(二)基本思路
(三)编程步骤
(四)实验结果
(五)遇到的bug及改正过程
三、教师点评
第7讲 过程:程序的模块化
一、知识点
(一)什么是过程?
(二)在Scratch程序里怎样实现过程?
(三)调用一个过程时到底发生了什么?
二、动手练:会织网的蜘蛛
(一)实验目的
(二)基本思路
(三)编程步骤
(四)实验结果
(五)思考与延伸
三、课后作业
实验:彩虹风车
四、教师点评
第8讲 列表:把几个变量合起来
一、知识点
(一)什么是列表?为什么要用列表?
(二)怎样理解列表?
(三)对列表的操作
二、动手练:找出最大值和最小值
(一)实验目的
(二)基本思路
(三)编程步骤
(四)实验结果
(五)思考与延伸
三、课后作业
实验:计算列表中数据的平均值
四、教师点评
第9讲 字符串:把几个字母合起来
一、知识点
(一)什么是字符串变量?
(二)对字符串变量有哪些操作?
二、动手练:元音字母计数
(一)实验目的
(二)基本思路
(三)编程步骤
(四)实验结果
三、教师点评
第10讲 收发消息:角色之间的沟通和协调
一、知识点
(一)角色之间的沟通和协调
(二)什么是“消息”?
(三)怎样创建消息?
(四)怎样发送消息?
(五)怎样接收消息?
二、动手练:“谁在哪里干什么”游戏
(一)实验目的
(二)基本思路
(三)编程步骤
(四)实验结果
三、教师点评
计算思维篇
第11讲 逐级逼近法:刘徽割圆法估计π
一、实验目的
二、背景知识
(一)π是什么?
(二)π是多少?
(三)怎样找一个数尽量接近π?
(四)刘徽割圆法估计π
三、基本思路
(一)画正多边形
(二)计算正多边形的边长
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、遇到的bug及改正过程
六、实验结果及分析
(一)随着正多边形边数(n)的增加,π的估计值的变化
(二)大圆小圆的结果一样吗?
七、教师点评
(一)为何叫“割圆法”?哪里体现了“割”?
(二)本讲采用的方法与刘徽割圆法的差异
(三)刘徽和祖冲之的生平
第12讲 聪明的枚举:巧解数字谜
一、实验目的
二、背景知识
(一)最笨的方法怎么填?
(二)如何使得枚举时不遗漏可能的填数方案?
(三)如何手工计算判断次数?
三、基本思路
(一)最笨的枚举法
(二)聪明一点的枚举法
(三)更聪明的枚举法
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、遇到的bug及改正过程
六、实验结果及分析
(一)算法找到了多少种答案?
(二)对比笨算法和聪明算法的判断次数
七、思考与延伸
八、教师点评
第13讲 再论聪明的枚举:三阶幻方
一、实验目的
二、背景知识
(一)什么是幻方?
(二)怎样填幻方?
(三)三阶幻方有哪些性质?
(四)三阶幻方的“包卜魏猜想”
三、基本思路
(一)最笨的填法是怎么填的?
(二)聪明的方法怎么填?
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、实验结果及分析
六、思考与延伸
七、教师点评
第14讲 从最简单的做起:4个和尚分馍馍
一、实验目的
二、基本思路
三、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
四、遇到的bug及改正过程
五、实验结果及分析
(一)2个和尚分馍馍的分法与馍馍数有何关系?
(二)3个和尚分馍馍的分法与馍馍数有何关系?
(三)4个和尚分馍馍的分法与馍馍数有何关系?
六、思考与延伸
七、教师点评
第15讲 用“试错法”求解鸡兔同笼问题
一、实验目的
二、背景知识
(一)什么是鸡兔同笼问题?
(二)怎样求解鸡兔同笼问题?
三、基本思路
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、遇到的bug及改正过程
六、实验结果及分析
七、思考与延伸
八、教师点评
第16讲 随机有威力:打圆形靶子估计π
一、实验目的
二、背景知识
三、基本思路
四、编程步骤
(一)背景和角色设计
(二)变量设计
(三)过程描述与代码展示
五、遇到的bug及改正过程
六、实验结果及分析
七、思考与延伸
八、教师点评
第17讲 再论随机有威力:布丰投针估计π
一、实验目的
二、背景知识
(一)布丰是谁?布丰实验是干什么的?
(二)历史上研究者做过的布丰投针实验
三、基本思路
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、遇到的bug及改正过程
六、实验结果及分析
七、思考与延伸
(一)扔圆环的碰线次数
(二)扔“将圆环掰直变成的投针”的碰线次数
(三)扔拐弯针的碰线次数
(四)比较一下长针和短针的碰线次数
(五)布丰投针能算π的终极解释
八、教师点评
第18讲 玩游戏体会“递归法”:河内塔游戏
一、实验目的
二、背景知识
(一)河内塔的故事
(二)什么是递归积木块?
(三)递归积木块是怎样执行的?
三、基本思路
(一)最简单的情形:1个盘子
(二)比较简单的情形:2个盘子
(三)难一点的情形:3个盘子
(四)再难一点的情形:4个盘子
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、遇到的bug及改正过程
六、实验结果及分析
(一)输入不同的n,验证移动次数
(二)要是有64个盘子呢?
七、思考与延伸
八、教师点评
第19讲 “递归法”的应用:斐波那契数列与黄金分割
一、实验目的
二、背景知识
(一)斐波那契是谁?什么是斐波那契数列?
(二)什么是黄金分割?
(三)斐波那契数列和黄金分割有何联系?
三、基本思路
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、实验结果及分析
六、思考与延伸
七、教师点评
(一)如果兔子要3个月才成年呢?
(二)斐波那契数列的有趣性质一:相邻月份数目之和
(三)斐波那契数列的有趣性质二:相邻偶数月份数目之积、相邻奇数月份数目之积
(四)植物中的斐波那契数列
第20讲 玩游戏体会“搜索法”:走迷宫
一、实验目的
二、基本思路
三、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
四、遇到的bug及改正过程
五、实验结果及分析
六、思考与延伸
(一)采用什么样的策略走最合适?
(二)“走迷宫”和解数学题之间有什么关系?
七、教师点评
第21讲 玩游戏体会“二分法”:找钻石
一、实验目的
二、背景知识
三、基本思路
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、遇到的bug及改正过程
六、实验结果及分析
七、思考与延伸
(一)采用什么样的策略最合适?
(二)傅鼎荃说对8行8列的游戏来说,使用二分法最多需要6次,为什么?
(三)用递归的观点想一想
八、教师点评
第22讲 “二分法”的应用:估计□的值
一、实验目的
二、背景知识
(一)□是怎么发现的?
(二)毕达哥拉斯是谁?
(三)为什么说□的发现是一件重要的事情?
三、基本思路
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、遇到的bug及改正过程
六、实验结果及分析
(一)除了2,计算一下其他数的平方根,比如3、5、7
(二)输入不同的初始估计值low和up,需要多少次循环才能估计准?
七、思考与延伸
(一)有没有更快的方法来估计出□呢?
(二)计算2的十二次方根□
八、教师点评
第23讲 仿真世界:牛顿的大炮
一、实验目的
二、背景知识
(一)牛顿是谁?
(二)牛顿的大炮是用来做什么的?
三、基本思路
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、遇到的bug及改正过程
六、实验结果及分析
七、思考与延伸
八、教师点评
(一)如何根据斜方向的拉力F计算出水平方向的拉力Fx和竖直方向的拉力Fy?
(二)平方反比率的推导和背后的原因
(三)牛顿和他所在的那个光辉时代
(四)用更大号的三棱镜重做牛顿的光谱实验
第24讲 再论仿真世界:森林里有几只老鼠,几只猫头鹰?
一、实验目的
二、背景知识
三、基本思路
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、遇到的bug及改正过程
六、实验结果及分析
七、思考与延伸
(一)要是第一年只有50万只老鼠呢?
(二)假如1万只猫头鹰每年吃掉0.1万只老鼠呢?
(三)假如1万只猫头鹰每年吃掉0.2万只老鼠呢?
八、教师点评
第25讲 博弈初探:会下tic-tac-toe棋的阿尔法小狗
一、实验目的
二、背景知识
(一)什么是tic-tac-toe棋游戏?
(二)人是怎样下棋的?
三、基本思路
(一)阿尔法小狗怎样表示棋局?
(二)阿尔法小狗怎样判断下在哪里赢面大呢?
(三)阿尔法小狗怎样下棋呢?
(四)阿尔法小狗怎样对棋局进行评分呢?
(五)阿尔法小狗要“深谋远虑”还是“目光短浅”?
四、编程步骤
(一)角色设计
(二)变量设计
(三)过程描述与代码展示
五、遇到的bug及改正过程
六、实验结果及分析
七、思考与延伸
(一)怎样让阿尔法小狗变聪明?
(二)新玩法:“狗狗大战”
八、教师点评
(一)阿尔法狗的诀窍之一:控制树不能太高
(二)阿尔法狗的诀窍之二:控制树不能太宽
(三)神经网络是怎样学会打分和走子的?
后记
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜