3コマ | 48人 |
---|---|
4コマ | 42人 |
文字列の出力
puts "こんにちは"
階乗の定義と計算
def fact(n) if (n > 0) then return n * fact(n-1) else return 1 end end puts fact(10) puts fact(50) puts fact(100)
なお、インデントや空白は人間が見易いように揃えているだけですから
def fact(n) if (n > 0) then return n * fact(n-1) else return 1 end end puts fact(10) puts fact(50) puts fact(100)や
if (n > 0) then return n * fact(n-1) else return 1 end end puts fact(10);puts fact(50);puts fact(100)と書いてもコンピュータにとっては同じことです。
オブジェクト = コンピュータ内の「もの」、数や文字列や配列など。
変数 = オブジェクトを指し示すための「名前」
ruby の場合は変数名(識別子)として、英小文字(a,b,...z)から始まる英数字の並び (含む '_')が使用できます(ここではそういうことにしておいてください)。
str = "こんにちは" euler = 2.718281828 x = 12345 a = ["a", "b", 1, 2]
y = x
x = 3.1415
1行ずつ実行してみましょう
str = "こんにちは" puts str euler = 2.718281828 puts euler x = 12345 puts x a = ["a", "b", 1, 2] puts x y = x puts y x = 3.1415 puts x
コンピュータは無限精度の実数を処理することはできません。 整数のみであれば「厳密」に計算できます。 浮動小数点数の場合は「近似」計算(有効桁数は大雑把に10進15桁くらい)となります。 整数と浮動小数点数が混ざった計算の結果は浮動小数点数になります。
+ | 和 | |
---|---|---|
- | 差 | |
* | 積 | |
/ | 商 | 整数計算と浮動小数点数計算では挙動が異なる |
% | 剰余 | 整数計算のみ |
** | 冪乗/巾乗 |
puts 1.0 + 2.0 puts 2.0 * 3.0 puts 5.0 - 8.0 puts 9.0 / 2.0
puts 1+2 puts 2*3 puts 5-8 puts 9/2 puts 9%2 puts 2**10
+ | 文字列の和 |
---|
puts "Hello, " + "world!" puts "こんにちは" + "Hello" puts "こんにちは" + " " + "Hello" puts "寿限無寿限無\n" + "五劫の擦り切れ\n" + "海砂利水魚の水行末\n" + "雲来末風来末\n" + "食う寝るところに住むところ\n" + "やぶら小路ぶら小路\n" + "パイポパイポパイポのシューリンガン、\n" + "シューリンガンのグーリンダイ、\n" + "グーリンダイのポンポコピーのポンポコナーの長久命の長助\n"
pi = 3.1415 puts "PI is " + pi
pi = 3.1415 puts "PI is " + pi.to_s
pi = "3.1415" puts "PI is " + pi
pi = "3.1415" puts 1 + pi.to_f