Ruby入門トップページ


目次

  1. 環境設定
    1. 自宅PCの環境設定
    2. オンラインで実行できる環境を利用しよう
  2. コマンドプロンプトの基礎知識
  3. Rubyを動かそう
    1. はじめてのRubyプログラム
    2. コメント
    3. 文字列と改行
    4. print, puts, p
    5. 変数と定数
    6. 四則演算
    7. 変数と演算
    8. 制御構造 (1) 条件分岐
    9. 制御構造 (2) 繰り返し
    10. コマンドライン引数の利用
    11. 演習課題
  4. いくつかのオブジェクト
  5. クラスと変数
  6. メソッド
  7. クラスとモジュール

Ruby入門

制御構造 (1) 条件分岐

ある条件のときだけ処理を行いたい場合は if 文を使う.

if 条件式 then
  条件式が成立した場合の処理内容
end

条件によって処理を変えたい場合は if ... else 文を使う.

if 条件式 then
  条件式が成立した場合の処理内容
else
  条件式が成立しなかった場合の処理内容
end

さらに条件によって処理を変えたい場合は if ... elsif ... else 文を使う.なお,elsifは必要に応じて複数指定できる.

if 条件式1 then
  条件式1が成立した場合の処理内容
elsif 条件式2 then
  条件式1が成立せず条件式2が成立した場合の処理内容
else
  どの条件式も成立しなかった場合の処理内容
end

なお,条件式の中では次の関係演算子(比較演算子とも呼ぶ)が使われる.特に「等しい」を意味する演算子は = ではなく ==であることに注意すること.

演算子記述例意味
==a == bab が等しい
!=a != bab が等しくない
>a > bab より大きい
>=a >= bab 以上である
<a < bab 未満である
<=a <= bab 以下である

また,Rubyに限らず多くのプログラミング言語では,条件分岐や繰り返し処理のプログラムを記述する際にインデント(字下げ)を行って,まとまりを見やすくすべきである.インデントはスペースを複数入力したり,タブを入力したりする方法がある.どちらが良いかは長年の論争になっているようである.高機能なテキストエディタではキーボードでタブキーを押したときにスペースを2個(あるいは4個)入力するように設定を変更することができる.秀丸エディタでは「その他」メニューの「ファイルタイプ別の設定」から「体裁」,「タブ」の中に「タブキーで空白入力」という設定項目があり,Atomテキストエディタでは「ソフトタブ」と呼ばれる設定がある.2017年6月20日には『「スペース派」の開発者は「タブ派」より高給取りになる』という記事も発表された.

Rubyに関しては正式なコーディング規約は存在しないようである.いくつかの団体/個人が公表しているコーディング規約は参考になる.

では,得点を指定すれば合否判定結果を表示するようなプログラムをいくつか作成してみよう.

if1.rb
# 合否判定
x = 70
if x >= 60 then
  puts "合格"
end
合格

if2.rb
# 合否判定
x = 50
if x >= 60 then
  puts "合格"
else
  puts "不合格"
end
不合格

if3.rb
# 合否判定
x = 70
if x >= 90 then
  puts "S : 合格"
elsif x >= 80 then
  puts "A : 合格"
elsif x >= 70 then
  puts "B : 合格"
elsif x >= 60 then
  puts "C : 合格"
else
  puts "不合格"
end
B : 合格

目次に戻る