2006-11-14
[Ruby]オレが知ってるRubyってなんだ
Rubyではスクリプトをテキストファイルを書く
スクリプトのファイル名は *.rb にする。
hello.rb
hello の部分はなんでもいい。
rubyにスクリプトファイルを与える
rubyにスクリプトファイルを渡してやればスクリプトファイルに書かれているプログラムが動く。
ruby hello.rb
シェルを知ってる?
Rubyでは文字を出力することができる
スクリプトファイル(hello.rb)に次のように書けばいい。
print 'HELLO'
出力ってなに?
Rubyではスクリプトが1行ずつ上から順に実行される
print 'A' print 'B' print 'C'
行単位……。
Rubyでは文字列を扱うことができる
スクリプトにはこんな風に書く。
'Hello' 'ABC' 'Z' '012345'
Rubyでは数値を扱うことができる
スクリプトにはこんな風に書く。
0 100
数値を表示する。
print 100
Rubyには変数がある
a = 'HELOO'
変数とは値に任意の名前をつけること。変数名はアルファベット小文字の文字列を使う。
絵がほしい。箱じゃないよ。ものに名前をつけているだけ。
moji = 'ABC' bye = 'Bye'
こうすると変数に代入された文字列が表示できる。
a = 'HELLO' print a
↓結果
HELLO
--
ぐはっ
- 数値
- 文字列
- 変数
- 流れ
- 流れを変える制御構造
よし。
Rubyの変数には数値を代入することもできる
a = 10 b = 20
Rubyでは四則演算が使える
a = 10 + 20 b = 10 - 5 c = 10 * 5 d = 10 / 5
1行目は「10 + 20 の計算結果を a とする」という意味。つまり a は 30
a = 10 + 20 print a #=> 30
『#=> 30』について。「print a を実行した結果 30 が出力されますよ」という意味。解説する上での便宜上『#=> ...』を使う。プログラムとは何も関係ない。実際のスクリプトは次のように書くだけ。
a = 10 + 20 print a
Rubyでは四則演算が使える(2)
a = 10 + 20 + 30 b = 10 + 20 * 5
b は次と同じ。
b = 10 + (20 * 5)
つまり b は次と同じ。
b = 10 + (100)
↓
b = 10 + 100
↓
b = 110
Rubyではプログラムの流れを変えることができる
a = 10 if a == 100 print 'A' end
何も出力されない。
a = 100 if a == 100 print 'A' end
A が出力される。
--
いつもこんな泥臭い感じになるなあ。
ほんとにこれがオレの知っているRuby!?何か忘れてない?