- 1. 概要
- 2. case
- 3. 参考サイト
1. 概要
「ruby」の「case」文について記述します。
詳細は、参考サイトをご参照ください。
2. case
いわゆる「C」言語でいうところの「switch」~「case」とは、趣がいささか異なるので注意が必要です。
C言語を知らない人には申し訳ないが、「C」言語で。
#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char* argv[])
{
char input[PATH_MAX] = {};
printf("なんか数値を入力してちょ ");
fgets(input, sizeof(input), stdin);
switch(atoi(input))
{
case 1:
printf("1 だぎゃ\n");
break;
case 2:
case 3:
case 4:
printf("2~4 のどれかだぎゃ\n");
break;
case 5:
case 7:
printf("5 か 7 だぎゃ\n");
break;
default:
printf("1~5 と 7 以外だぎゃ\n");
break;
}
return 0;
}
と書いているものと「Ruby」で。
#!/usr/bin/env ruby
print('なんか数値を入力してちょ ')
input = gets
case input.to_i
when 1
puts('1 だぎゃ')
when 2 .. 4
puts('2~4 のどれかだぎゃ')
when 5,7
puts('5 か 7 だぎゃ')
else
puts('1~5 と 7 以外だぎゃ')
end
と書いているのはまったく同じ動きをします。
9行目の記述は、使いようのある場面では便利かもしれません。「..」の前後には空白を空けないといけないのでご注意を。
3. 参考サイト
本ページは、下記のサイトを参考にさせていただきました。
「Ruby 2.5.0 リファレンスマニュアル > 制御構造 - case」
|
|