CoeMonkey少儿编程第4章 变量
点击这里,现在就开启CodeMonkey的趣味编程之旅。
目标
- 了解什么是变量
- 了解变量的命名规则
- 掌握如何使用变量
变量
什么是变量?顾名思义,变量就是可以变化的量。
和变量相对的是常量,即不可变化的量。例如数字1、2.5等等,它们都是常量。
在使用变量之前,我们首先要给变量取一个名字,这样我们才能使用这个变量。
变量名只能使用数字、字母和下划线,并且不能以数字开头。
例如,d是一个合法的变量名,而2d则是不合法的,它不能用作变量名。
在定义变量的同时,我们一般都会对它进行赋值,这一过程也称做变量的初始化。
d = 2 # 定义一个名字为d的变量,将其初始化为2
以上语句即定义了一个名字为d的变量,它的值是2。
我们可以把变量想象成是一个盒子,在它里面存放着数据(2),为了方便查找,我们在盒子外面写了一个d,用来表示这个变量的名字。
当我们以后需要用到这个盒子里面的数据时,我们只用写出盒子的名字d就行了。
step 2*d
因为变量d里面存放的是数据2,所以,上述语句等同于:
step 4
看到这里,你也许会问,我为什么不直接写成 step 4 , 这样不是更加地简单明了吗?
你说得没错,在这里确实体现不出使用变量的优点。现在,让我们看一个例子,你就知道变量有多么大的用处啦!
使用变量
下面是我设计的一个关卡,用于说明为什么要引入变量这一概念。请看下图:

上图右侧给出了最直接,同时也是最笨的解题方法。
如果忽略每次移动的步数的差别,那么,这段代码是可以使用times循环简化成如下的形式的:
12.times ->
....step d # 请先忽略这个d
....turn left
但是关键问题是,由于每次移动的距离都是不一样的,所以没法直接写成上述形式。
所以,我们引入了变量,有了变量,这可就好办了。
很明显,小猴子每次移动的步数都是递增的,它每次都比上一次多走2步。
于是,我们可以定义一个变量,它的名字是d,我们用它来表示每次小猴子移动的距离,并给它一个初始值2。
每移动一次之后,让变量增加2。
这样,我们能得到了以下的代码:
d = 2 # 定义变量d,赋初始值2给它
12.times -> # 将以下的代码循环执行12次
....step d # 小猴子移动d步
....d = d + 2 # d递增2
....turn left # 小猴子左转
怎么样,再对比一下上图的笨办法,这样写是不是顿时简单清爽好多啦?
来看一看运行结果:

这就是为什么要引入变量的原因,你现在了解了吧?
好了,本章内容就到这里了,赶紧利用本章所学知识去闯关吧!
作业
- 故事模式 31 - 50 关
- 进阶模式 4-1 - 4-20 关
小结
- 变量的值是可以变化的。
- 变量名不能以数字开头。
- 变量常常配合times循环使用。
问答
- 怎么能玩到你创建的那一关?
点击这里,你可以尝试来给出你自己的解决方案。 - 怎么样才能体验更多的关卡?
点击这里,即刻开始了解更多CodeMonkey有趣课程。 - 内容还不错,但这文章排版实在不行啊?
点击这里,获取更好的阅读体验。
CoeMonkey少儿编程第4章 变量的更多相关文章
- CodeMonke少儿编程第1章 step与turn
第1章 step与turn 目标 了解游戏舞台的各组成部分 掌握step和turn指令的用法 说起计算机,对于不了解它的人来说,也许会感到有些神秘,其实不然,它不过是能够接收指令并且按照指令执行的一种 ...
- CodeMonkey少儿编程第2章 turnTo对象
目标 了解对象的概念 了解方法与对象的关系 掌握turnTo指令的用法 在开始本章的学习之前,我们先来复习一下上一章的知识点. 在第1章中,我们学会了在这个游戏中最简单的两个指令. step x 其中 ...
- CodeMonkey少儿编程第3章 times循环
目标 了解程序由哪三种基本的结构组成 了解循环的概念 掌握times的结构与用法 三种基本结构 计算机程序由三种最基本的结构组成,它们分别是: 顺序结构 循环结构 选择结构 千万不要被这些陌生的术语给 ...
- CodeMonkey少儿编程第7章 函数
目标 了解函数是什么 掌握如何定义一个函数 函数是什么 本章我们学习一个新的概念----函数. 你可以简单的将函数看作为一个黑匣子,给它输入参数后,它将会按照一定的规则,执行相应的指令或输出数据. 让 ...
- 异步编程系列06章 以Task为基础的异步模式(TAP)
p { display: block; margin: 3px 0 0 0; } --> 写在前面 在学异步,有位园友推荐了<async in C#5.0>,没找到中文版,恰巧也想提 ...
- C++ Primer 读书笔记 第2章 变量和基本类型
C++ Primer 第二章 变量和基本类型 2.1 基本内置类型 C++定义了一组表示整数.浮点数.单个字符和布尔值的算术类型(arithmetic type),此外还定义了Void类型. 算术类型 ...
- 使用Scratch进行少儿编程
在上一篇<初识少儿编程>曾提到过Scratch的脚本标签内包含10大模块,本文将围绕这10大模块展开,分为两部分:积木和编程概念,结合<动手玩转Scratch2.0编程―STEAM创 ...
- 3-8《Ruby元编程》第二章对象模型
<Ruby元编程> 第二章 对象模型 类定义揭秘inside class definitions: class关键字更像一个作用域操作符,核心作用是可以在里面随时定义方法. [].meth ...
- 少儿编程|Scratch编程教程系列合集,总有一款适合你
如果觉得资源不错,友情转发,贵在分享!!! 少儿编程Scratch: 少儿编程Scratch第一讲:Scratch完美的初体验少儿编程Scratch第二讲:奇妙的接球小游戏少儿编程Scratch第三讲 ...
随机推荐
- day019python之面向对象基础1
面向对象基础 目录 面向对象基础 1 面向对象基础 1.1 面向对象的由来 1.2 面向对象编程介绍 1.2.1 回顾面向过程设计 1.2.2 面向对象设计 2 类与对象 2.1 基本使用 2.2 示 ...
- java基础:方法的定义和调用详细介绍,方法同时获取数组最大值和最小值,比较两个数组,数组交换最大最小值,附练习案列
1. 方法概述 1.1 方法的概念 方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集 注意: 方法必须先创建才可以使用,该过程成为方法定义 方法创建后并不是直接可 ...
- 【程序包管理】篇章3:CentOS平台下软件包安装方法总结
1.软件包安装前的学习:程序包管理的基础知识 2.程序包安装的方法介绍: rpm文件的二进制包安装:Linux程序包管理之rpm安装总结 yum安装:Linux程序包管理之yum源安装 链接:本地yu ...
- (十)、cat--查看文件命令
一.命令描述与格式 将文件或标准输入组合输出到标准输出,所以注定了其可以配合管道应用, 格式:cat [选项] [files] 选项: -A --show-all ...
- 诡异的NPE--三目运算自动类型转换
今天在项目中碰到一个诡异的空指针异常的问题,刚开始很不解,明明自己做了空判断,为什么还是出现了空指针呢? 最后排查出来的原因是:三目运算符的自动类型匹配机制. 现场 java.lang.NullPoi ...
- shiro 拦截时序图
shiro 集成 web 1.第一个过滤器-AbstractShiroFilter subject 是后续动作的主体. 首先构造 subject: WebSubject DefaultSecurity ...
- C语言几种排序算法
(1)选择排序算法:选择排序算法是,将第一个数和其它的数比较,将较小的数(从小到大的排列)和第一个数换位,以此类推 #include<stdio.h> int main() { int i ...
- 一、linux安装mysql
一.下载mysql免编译包: wget http://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.g ...
- 单细胞分析实录(8): 展示marker基因的4种图形(一)
今天的内容讲讲单细胞文章中经常出现的展示细胞marker的图:tsne/umap图.热图.堆叠小提琴图.气泡图,每个图我都会用两种方法绘制. 使用的数据来自文献:Single-cell transcr ...
- 在md里画流程图
可以使用名为mermaid的代码块,即 ```mermaid``` 需要md解析器能解析mermaid mermaid使用详情参见