写这本书之前,作者一直在摸索一种最有利于入门者学编程的方法,并应用到教学当中。经过两年的教学实践,他确信他的方法是有效的,于是便有了这本书。这本书面向的是完全没有接触过编程的读者。作者将门槛设置得非常低,读者不需要懂得变量、函数这些名词(这些名词在书中也不会出现),不需要会英语,完全不需要查阅其他书籍,只需要小学算术水平即可。这本书给初学者非常平缓的学习曲线,有利于为之后的进阶学习打下坚实的基础。
第1章 编写程序之前1
1.1 想要做出“那个游戏”应该怎么办2
1.1.1 做那个游戏时需要什么编程技术2
1.1.2 那个游戏到底是什么3
1.1.3 程序是什么8
1.1.4 这个奇妙的文章到底是什么9
1.1.5 你的目标有多高10
1.2 从哪儿开始着手14
1.2.1 编程语言的学习方法15
1.2.2 从哪里开始编程15
1.2.3 找出易于着手的要素16
1.3 本章想传达的内容16
第2章 接触存储区~绘制方块~17
2.1 运行写下的程序17
2.2 绘制方块21
2.2.1 绘制方块的最基本规则21
2.2.2 这一行代码究竟是什么意思22
2.2.3 存储区是什么24
2.2.4 操纵存储区后为什么会出现白点27
2.2.5 计算机是怎样的设备27
2.2.6 画面中的点和几号存储区相关联29
2.2.7 存储区中保存的数值与颜色的关系33
2.3 在指定位置绘制方块35
2.3.1 在画面正中央画红色方块35
2.3.2 加1减1真是麻烦39
2.3.3 为何从0开始41
2.3.4 这样就可以绘制那个游戏的画面了吗45
2.4 本章想传达的内容46
第3章 循环~让程序变短~49
3.1 减少行数50
3.1.1 在1行中操纵多个存储区51
3.1.2 为什么是循环52
3.2 循环的使用方法53
3.2.1 循环的语法53
3.2.2 什么可以用于绘制方块54
3.2.3 不固定数字55
3.2.4 运行1次后就结束57
3.2.5 运行2次后就结束58
3.2.6 想让程序运行16次后结束应该怎么做61
3.2.7 循环任意次数的方法62
3.2.8 怎么实现每次循环时对不同像素进行涂色62
3.3 使用循环绘制方块66
3.3.1 然而事情并没有那么简单67
3.3.2 怎么对循环使用循环69
3.3.3 这个程序的问题在哪里71
3.3.4 在脑中运行72
3.3.5 从结果出发进行思考74
3.3.6 程序不按预期运行时应该怎么办79
3.3.7 使用循环的价值在哪里80
3.3.8 要在画面中央绘制方块该怎么办81
3.4 本章想传达的内容83
第4章 程序的变形~绘制大量的方块~85
4.1 使用循环绘制墙壁86
4.1.1 循环绘制方块86
4.1.2 绘制20个88
4.1.3 照此绘制出右侧和下方的墙壁91
4.1.4 注释95
4.2 还想继续缩短97
4.2.1 将循环合并98
4.2.2 已经到头了吗102
4.2.3 能不能把底部也合并进来103
4.2.4 这就是容易理解的程序吗108
4.3 本章想传达的内容109
第5章 将程序分离~更轻松地绘制大量的方块~111
5.1 除循环以外,能重复使用同一行的方法112
5.1.1 使用引用会怎么样112
5.1.2 引用的易理解性115
5.2 Sunaba中的“引用”117
5.2.1 关于运行119
5.2.2 如何有效利用局部程序120
5.2.3 每次引用时对不同的点进行涂色120
5.3 使用局部程序绘制墙壁和底部121
5.3.1 使用局部程序绘制左右两侧的墙壁123
5.3.2 局部程序的价值在哪里128
5.4 改得更易懂些130
5.4.1 注释的必要性131
5.4.2 注意“特殊的数字”132
5.5 本章想传达的内容138
第6章 会动的程序~让方块下落~141
6.1 接下来该做什么142
6.2 使方块下落143
6.2.1 试着让点下落144
6.2.2 让方块下落146
6.2.3 修正错误150
6.2.4 修正问题155
6.3 绘制得更快158
6.3.1 如何关闭调控功能159
6.3.2 调控是什么160
6.3.3 寄信162
6.4 将目前的成果组合在一起164
6.4.1 首先是简单地拼在一起164
6.4.2 绘制墙壁和底部167
6.4.3 关闭调控168
6.4.4 将下落的方块移到中间169
6.5 本章想传达的内容170
第7章 为存储区起名~更多中文~173
7.1 现在的程序有什么问题174
7.1.1 需要什么样的工具176
7.1.2 不用自己编号178
7.2 在Sunaba中为存储区取名181
7.2.1 先试用一下182
7.2.2 不需要考虑存储区编号183
7.3 命名存储区的规则185
7.3.1 什么时候生成的命名存储区185
7.3.2 命名存储区只作用于其所在的局部程序186
7.3.3 从循环的外部无法看到189
7.4 本章想传达的内容190
第8章 可以操作的程序~操作方块~191
8.1 操作是怎么一回事192
8.1.1 对键盘做出响应192
8.1.2 程序是这样了解到外部的内容的193
8.2 实现可以操作196
8.2.1 来不及按按键,就算按下也看不出来196
8.2.2 在程序运行中按下按键198
8.2.3 移动点200
8.2.4 关闭调控201
8.2.5 向其他方向移动201
8.2.6 移动方块203
8.3 避免过快地移动205
8.3.1 先从小处着眼205
8.3.2 “不能持续移动”代表什么意思206
8.3.3 怎么知道“上次没有按下”207
8.3.4 查看完白板后决定做什么209
8.3.5 想到式子211
8.3.6 上下左右移动214
8.3.7 回到方块216
8.4 移动下落中的方块217
8.4.1 绘制两壁和底部,完成现在可以进行的改造218
8.4.2 使方块下落220
8.5 本章想传达的内容220
第9章 “计算”本来的意思~缓慢下落~223
9.1 什么是缓慢下落224
9.1.1 不会每次都发生移动的程序225
9.1.2 之前移动了的话这次不移动226
9.1.3 使用除法228
9.1.4 另一个方法230
9.2 有条件运行231
9.2.1 有选择地运行某一行231
9.2.2 仅循环1次就停止233
9.2.3 有条件运行是否有用235
9.3 Sunaba中的有条件运行237
9.3.1 之前的例子会变成什么样237
9.3.2 缓慢画线238
9.3.3 将目前的成果组合起来240
9.3.4 整理针对持续按下的对策242
9.4 计算的本质245
9.4.1 什么是条件表达式成立245
9.4.2 “<”到底是什么?247
9.4.3 Sunaba 的计算符号248
9.4.4 那么使用一下249
9.4.5 尝试使用251
9.5 本章想传达的内容254
第10章 批量使用存储区~堆积方块~257
10.1 碰撞是什么意思258
10.1.1 碰撞到底部是什么意思258
10.1.2 试着碰撞墙壁263
10.1.3 思考接下来会发生的事情266
10.2 批量使用存储区267
10.2.1 将问题转换268
10.2.2 按照堆积顺序记忆269
10.2.3 记住所有格子的状态272
10.2.4 比较两种方法275
10.3 堆积277
10.3.1 整理一下具体做法277
10.3.2 出发点278
10.3.3 碰撞到底部后,就堆积到那里279
10.3.4 让新的方块出现280
10.3.5 在底部以外也堆积起来283
10.3.6 想要改得更短286
10.3.7 重新引入墙壁和左右移动的内容289
10.3.8 对程序进行整理292
10.3.9 “使之堆积”的局部程序295
10.3.10 下落速度和长按时的对策297
10.4 本章想传达的内容300
第11章 为存储区起名进阶版~消除横行~303
11.1 首先单单考虑消除304
11.1.1 大致顺序304
11.1.2 消除程序305
11.1.3 进行组合310
11.1.4 更轻松地进行确认312
11.1.5 确认是否无法下落314
11.2 对程序加以改良315
11.2.1 指定编号的存储区不能起名315
11.2.2 在局部程序中使用局部程序时318
11.2.3 为局部程序传递信息的新方法320
11.2.4 使用“输入”323
11.2.5 引入“输入”后问题是否得以解决325
11.2.6 在整个程序中使用输入327
11.3 落下330
11.3.1 最简单的例子330
11.3.2 写成程序332
11.3.3 上方堆积有大量方块时的情况335
11.3.4 让上方堆积着的方块全部下落337
11.3.5 另一种做法340
11.3.6 哪一个更好些342
11.4 本章想传达的内容343
第12章 将所有内容组合起来~旋转方块~345
12.1 增加为2个347
12.1.1 降落中的方块是怎样表示出来的呢347
12.1.2 绘制出2个红色方块的单纯方法348
12.2 旋转是怎么回事352
12.2.1 忘掉旋转以外的内容352
12.2.2 从结果开始思考354
12.2.3 旋转共分4种356
12.2.4 更聪明的写法359
12.3 添加旋转之前362
12.3.1 回想起2个方块并排排列的程序362
12.3.2 将程序整理得小一些364
12.3.3 重新考虑查看能否正常运行的方法367
12.3.4 其他做法369
12.3.5 停止保存2个格子的位置375
12.3.6 充分利用局部程序377
12.3.7 局部程序的输出379
12.3.8 已经整理得差不多了吧380
12.4 添加旋转功能382
12.4.1 添加旋转后会发生的变化382
12.4.2 大致写出来384
12.4.3 追加输入的局部程序386
12.4.4 计算格子的位置388
12.4.5 真正进行旋转389
12.5 可以正常运行吗392
12.5.1 果然有问题392
12.5.2 应该是怎样的问题394
12.5.3 修正395
12.6 本章想传达的内容400
第13章 “表格”这个思考方式~完成游戏~403
13.1 3 个3个下落403
13.1.1 在程序中,2和3的不同之处404
13.1.2 3个格子的连接方式并非只有1种406
13.1.3 编写程序408
13.1.4 绘制出2 种形状409
13.1.5 加入旋转413
13.1.6 “表格”这个思考方式415
13.1.7 事先做出表格420
13.2 4 个4个下落422
13.2.1 3格与4格有什么不同422
13.2.2 变成4格后会有多少种类425
13.2.3 确定基准格子和旋转前的形状427
13.2.4 编写程序428
13.2.5 到此为止合适吗431
13.2.6 为了省事432
13.2.7 那个表格中记录着怎样的内容433
13.2.8 缩减有关旋转的表格434
13.2.9 进一步缩减有关旋转的表格438
13.3 本章想传达的内容445
第14章 走出沙地~一个开端的结束~447
14.1 目前为止使用过的思考方式447
14.1.1 从结果出发进行思考448
14.1.2 提问的方法448
14.1.3 目标和手段450
14.1.4 准备多个选项451
14.1.5 总结452
14.2 为了更进一步452
14.2.1 再多玩一会儿Sunaba453
14.2.2 转向实用语言454
14.3 实用语言的难点455
14.3.1 想要进入能够使用的状态很麻烦455
14.3.2 运行的工序455
14.3.3 语法复杂456
14.3.4 要绘制图形或发出声音并不容易456
14.3.5 面向对象程序设计457
14.3.6 需要英语能力458
14.3.7 看不到存储区459
14.3.8 推荐JavaScript460
结语463
《数据资产论》内容简介:数据创造价值的过程,就是数据资源资产化的伟大历程! 本书试图回答以下问题:数据如何产生价值?纯粹而孤
微机原理与接口技术-第二版 本书特色 田辉主编的这本《微机原理与接口技术(第2版)》为教育部高等学校电子电气基础课程教学指导分委员会推荐教材。全书共分九章,内容...
《STM32开发实战:LabVIEW卷》内容简介:作为学习LabVIEW与32位微处理器STM32的入门级教材,本书从LabVIEWforARM嵌入式软件架构入...
《机器学习实战:模型构建与应用》内容简介:本书主要包括两部分。第1部分(第1章-第11章)讲解了如何使用TensorFlow来创建不同应用
《工业互联网推动中小企业包容性增长的内在逻辑》内容简介:本书紧扣“把握构建新发展格局的时代使命,立足中小企业生力军主体,依
算法竞赛入门经典习题与解答 本书特色 《算法竞赛入门经典——习题与解答》是在《算法竞赛入门经典(第2 版)》的基础上,延伸出来的一本习题...
日历盒子是MONO日签的纸质版本,模拟了作为APP的MONO拥有的经典下拉流的交互阅读模式。365天的日签逐格被仪式化地装入黑色的匣体
《人文知识与改错(英语专业八级考试培训教程)》内容简介:本书是针对专八考试人文知识与改错部分的专项辅导书。人文知识大致从英
本书在介绍无线传播理论的基础上对Cdma2000以及WCDMA中先进的关键技术进行了详细的介绍,其中包括日趋成熟的信道编码、调制技术,
《EOS实战与源码分析》内容简介:在区块链世界,区块链1.0时代是比特币,区块链2.0时代是以太坊,区块链3.0时代是EOS。EOS如同一个
软件测试基础 内容简介 This extensively classroom-tested text uses an innovative approach t...
《一个女孩的恐惧》内容简介:一个深夜,女孩手持双管猎枪,径直冲进森林,用枪口抵住一个人的额头,扣下扳机 人们常常说熊镇太不起
《欧阳询皇甫诞碑》内容简介:皇甫诞,安定乌氏(今甘肃平凉西北)人,隋并州总管司马。隋炀帝弑父杀兄取得皇位,时任并州总管的隋
《王羲之十七帖》内容简介:《十七帖》是一组王羲之尺牍作品,因卷首有“十七日”字样,故名。其内容多言蜀中风情人物,主要为王羲
YouvelearnedthebasicsofPython,buthowdoyoutakeyourskillstothenextstage?Evenifyouk...
《公司制的黄昏:区块链思维与数字化激励》内容简介:本书从公司制诞生的底层逻辑复式记账法谈及,探讨了当今公司制的两大困境:无
《进化:顶级企业家自述40年成长心法》内容简介:改革开放是是一次觉醒与长征,是中国近代史的里程碑。一个国家在四十年中风雨前行
《Flask Web开发实战:入门、进阶与原理解析》内容简介:这是一本面向Python程序员的,全面介绍Python Web框架Flask的书。关于本书
《互联网企业安全高级指南》内容简介:本书由业内多位顶级安全专家亲力打造,分享了他们十多年的安全行业经验。从技术到管理,从生
建筑结构CAD应用基础(第二版)(高等学校土木工程专业规划教材) A3604 目录 第1章 土木工程结构CAD及应用概况1.1 工程结构CAD的发展历史1.2 ...