zoukankan      html  css  js  c++  java
  • 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 , 这样不是更加地简单明了吗?

    你说得没错,在这里确实体现不出使用变量的优点。现在,让我们看一个例子,你就知道变量有多么大的用处啦!

    使用变量

    下面是我设计的一个关卡,用于说明为什么要引入变量这一概念。请看下图:

    challenges_69655

    上图右侧给出了最直接,同时也是最笨的解题方法。

    如果忽略每次移动的步数的差别,那么,这段代码是可以使用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     # 小猴子左转

    怎么样,再对比一下上图的笨办法,这样写是不是顿时简单清爽好多啦?

    来看一看运行结果:

    variable_69655

    这就是为什么要引入变量的原因,你现在了解了吧?

    好了,本章内容就到这里了,赶紧利用本章所学知识去闯关吧!

    作业

    • 故事模式 31 - 50 关
    • 进阶模式 4-1 - 4-20 关

    小结

    • 变量的值是可以变化的。
    • 变量名不能以数字开头。
    • 变量常常配合times循环使用。

    问答

    • 怎么能玩到你创建的那一关
      点击这里,你可以尝试来给出你自己的解决方案。
    • 怎么样才能体验更多的关卡?
      点击这里,即刻开始了解更多CodeMonkey有趣课程。
    • 内容还不错,但这文章排版实在不行啊?
      点击这里,获取更好的阅读体验。
  • 相关阅读:
    EF5+MVC4系列(5) 删除的方法 1:系统推荐的先查询后remove删除的方法 2:自己new一个包含主键的类,然后 attach附加 remove删除;3:使用db.Entry 修改状态删除4:EntityState的几种状态
    指定webapi 返回 json 格式 ; GlobalConfiguration.Configuration.Formatters.Clear()
    远程桌面连接工具 Remote Desktop Manager 9.1.2.0 Enterprise 多国语言绿色版附注册码 简单使用
    .NET WebAPI 正确抛出错误详细信息
    观察者模式 发布订阅者模式
    7月目标 socket , 一致性哈希算法 ; mongodb分片; 分布式消息队列; 中间件的使用场景
    在js中 把 json对象转化为String对象的方法
    mvc4中的 webapi 的使用方式
    Uncaught TypeError: TableInit is not a constructor
    Jquery复选框操作
  • 原文地址:https://www.cnblogs.com/outs/p/14328001.html
Copyright © 2011-2022 走看看