每一种程序语言都包含处理数字和进行数学计算的方法。不必担心,程序设计师经常撒谎说他们是多么厉害的数学天才,其实他们根本不是。如果他们真是数学天才,他们早就去从事数学相关的行业了,而不是写写广告程序和社交网路游戏,从人们身上偷赚点小钱而已。
这章习题里有很多的数学运算符号。我们来看一遍它们都叫什么。你要一边写一边念出它们的名称来。直到你念烦了为止。名称如下:
~~~
+ 加号
- 减号
/ 除号
* 乘号
% 百分比符号
< 小于符号
> 大于符号
<= 小于等于符号
>= 大于等于号
~~~
有没有注意到以上只是些符号,没有运算操作呢?写完下面的练习程序后,再回到上面的列表,写出每个符号的作用。例如 + 是用来做加法运算的。
~~~
puts "I will now count my chickens:"
puts "Hens", 25 + 30 / 6
puts "Roosters", 100 - 25 * 3 % 4
puts "Now I will count the eggs:"
puts 3 + 2 + 1 - 5 + 4 % 2 - 1 / 4 + 6
puts "Is it true that 3 + 2 < 5 - 7?"
puts 3 + 2 < 5 - 7
puts "What is 3 + 2?", 3 + 2
puts "What is 5 - 7?", 5 - 7
puts "Oh, that's why it's false."
puts "How about some more."
puts "Is it greater?", 5 > -2
puts "Is it greater or equal?", 5 >= -2
puts "Is it less or equal?", 5 <= -2
~~~
# 你应该看到的结果
* * * * *
~~~
$ ruby ex3.rb
I will now count my chickens:
Hens
30
Roosters
97
Now I will count the eggs:
7
Is it true that 3 + 2 < 5 - 7?
false
What is 3 + 2?
5
What is 5 - 7?
-2
Oh, that's why it's false.
How about some more.
Is it greater?
true
Is it greater or equal?
true
Is it less or equal?
false
$
~~~
# 加分习题
* * * * *
1. 使用 `# `在程序每一行的前一行为自己写一个注释,说明一下这一行的作用。
2. 记得最开始时的 的 IRB 吧?再次打开 IRB,然后使用刚才学到的运算符号,把Ruby 当做计算器玩玩。
3. 自己找个想要计算的东西,写一个 `.rb` 档案把它计算出来。
4. 有没有发现计算结果是「错」的呢?计算结果只有整数,没有小数部分。研究一下这是为什么,查找一下「浮点数(floating point number)」是什么东西。
5. 使用浮点数重写一遍 `ex3.rb`,让它的计算结果更准确(提示: 20.0 是一个浮点数)。
- 笨方法更简单
- 习题 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: 重视各种符号