你已经学会了输出东西和数学运算。下一步你要学的是「变量」。在开发程序中,变量只不过是用来代表某个东西的名称。程式设计师通过使用变量名称可以让他们的程序读起来更像英语。而且因为程序设计师的记性都不怎样,变量名称可以让他们更容易记住程序的内容。如果他们没有在写程序时使用好的变量名称,在下一次读到原来写的程序时对他们会非常头疼的。
如果你被这章习题难住了的话,记得我们之前教过的:找到不同点、注意细节:
1. 在每一行的上面写一行注释,给自己解释一下这一行的作用。
2. 倒着读你的 `.rb` 文件。
3. 朗读你的 `.rb` 文件,将每个字符也朗读出来。
~~~
cars = 100
space_in_a_car = 4.0
drivers = 30
passengers = 90
cars_not_driven = cars - drivers
cars_driven = drivers
carpool_capacity = cars_driven * space_in_a_car
average_passengers_per_car = passengers / cars_driven
puts "There are #{cars} cars available."
puts "There are only #{drivers} drivers available."
puts "There will be #{cars_not_driven} empty cars today."
puts "We can transport #{carpool_capacity} people today."
puts "We have #{passengers} passengers to carpool today."
puts "We need to put about #{average_passengers_per_car} in each car."
~~~
> Note: space_in_a_car 中的 _ 是 底线(underscore) 符号。你要自己学会怎样打出这个符号来。这个符号在变量k里通常被用作假想的空隔,用来隔开单词。
# 你应该看到的結果
* * * * *
~~~
$ ruby ex4.rb
There are 100 cars available.
There are only 30 drivers available.
There will be 70 empty cars today.
We can transport 120.0 people today.
We have 90 passengers to carpool today.
We need to put about 3 in each car.
$
~~~
# 加分习题
* * * * *
当我刚开始写这个程序时我犯了个错误,Ruby 告诉我这样的错误信息:
> ex4.rb:8:in `<main>': undefined local variable or method `car_pool_capacity' for main:Object (NameError)
用你自己的话解释一下这个错误信息,解释时记得使用行号,而且要说明原因。
# 更多的加分习题
* * * * *
1. 解释一下为什么程序里面用了 4.0 而不是 4。
2. 记住 4.0 是一个「浮点数」,自己研究一下这是什么意思。
3. 在每一个变量赋值的上一行加上一行注释。
4. 记住 `=` 的名称是等于(equal),它的作用是为东西取名。
5. 记住 `_` 是底线(underscore)。
6. 将 IRB 作为计算机跑起来,就跟以前一样,不过这一次在计算过程中使用变量名称来做计算,常见的变数名称有 `i `、 `x `、 `j` 等等。
- 笨方法更简单
- 习题 00: 准备工作
- 习题 01: 第一个程序
- 习题 02: 注释和#号
- 习题 03: 数字和数学计算
- 习题 04: 变量的命名
- 习题 05: 更多的变量和输出
- 习题 06: 字符串和文字
- 习题 07: 更多输出
- 习题 08: 输出,输出
- 习题 09: 输出,输出,输出~
- 习题 10: 那是啥?
- 习题 11: 提问
- 习题 12: 模块
- 习题 13: 参数,解包,参数
- 习题 14: 提示和传递
- 习题 15: 读取文件
- 习题 16: 操作文件
- 习题 17: 更多的文件操作
- 习题 18: 命名,变量,代码,函数
- 习题 19: 函数和变量
- 习题 20: 函数和文件
- 习题 21: 函数可以传入信息
- 习题 22: 到现在你学到了什么?
- 习题 23: 阅读一些代码
- 习题 24: 更多练习
- 习题 25: 更多更多的练习
- 习题 26: 恭喜你,现在来考试了!
- 习题 27: 记住逻辑关系
- 习题 28: Boolean表达式练习
- 习题 29: 如果
- 习题 30: Else 和 If
- 习题 31: 做出判断
- 习题 32: 循环和数组
- 习题 33: While
- 习题 34: 存取数组里的元素
- 习题 35: 分支和函数
- 习题 36: 设计和测试
- 习题 37: 重视各种符号