変数定義
1.型無しで定義できる
2.セミコロンがいらない
//C言語やC#言語の場合
//int year = 2020;
//Ruby
year = 2020
入出力
1.シングルクォーテーションやダブルクォーテーションで囲む。
2.クォーテーションで囲むと文字列として扱われる
3.文字列中で変数をつかうときは「#{ }」で変数をかこむ(ダブルクォーテーションのとき利用可能)。
num1 = 10
num2 = 20
puts num1 + num2
puts "num1" + "num2"
puts "#{num1}" + "#{num2}"
buf1 = "春夏"
buf2 = "秋冬"
puts buf1 + buf2
[実行結果]
30
num1num2
1020
春夏秋冬
出力
改行なし print
改行あり puts
print "あいう"
puts "あいう"
puts "あいう"
print "あいう"
[実行結果]
あいうあいう
あいう
あいう
入力
文字列:gets.chomp
input = gets.chomp
puts input
[実行結果]
1
1
ここで、gets.chompは文字列として入力されるため、
数値変換するためには「gets.chomp.to_i」をつかう。
input = gets.chomp.to_i
puts input
1
1
複数の要素の入力
スペースで区切られているとき。
# 入力
あ い う え お
gets.chomp.splitを使う。
input = gets.chomp.split
スペースで区切られているかつ、要素が数値の時。
map(&:to_i)をつける。
# 入力
# 1 2 3 4 5
input = gets.chomp.split.map(&:to_i)
配列
宣言
1.大カッコ「[]」でかこむ
languages = ["日本", "中国", "アメリカ"]
puts languages
[実行結果]
日本
中国
アメリカ
配列の要素数
lengthメソッドをつかう
languages = ["日本", "中国", "アメリカ"]
puts languages.length
[実行結果]
3
配列の要素の追加
配列 << 要素
languages = ["日本", "中国", "アメリカ"]
languages << "イギリス"
puts languages
[実行結果]
日本
中国
アメリカ
イギリス
配列の要素の削除
配列.delete(要素)
languages = ["日本", "中国", "アメリカ"]
languages.delete("アメリカ")
puts languages
[実行結果]
日本
中国
配列の繰り返し処理
配列.ecach do |変数|
#処理
end
colors = ["red", "green", "yellow"]
colors.each do |x|
puts x
end
[実行結果]
red
green
yellow
for文
for 変数 in オブジェクト(数値範囲や配列)
#処理
end
数値範囲は「..」か「...」の記号を使用する
「..」は以下 例)1..5は1から5まで
「...」は未満 例)1...5は1から4まで
for num in 1..5
puts num
end
[実行結果]
1
2
3
4
5
メソッドの定義
def メソッド名(引数)
#処理
end
def check(number)
#処理
end
if文
①if,elsif,elseを使用する(elseifではない)。
②endを忘れない
if num > 10
puts "10より大きい"
elsif num == 10
puts "10"
else
puts "10より小さい"
end
def check(num)
if num > 10
puts "10より大きい"
elsif num == 10
puts "10"
else
puts "10より小さい"
end
end
check(5)
check(10)
check(20)
[実行結果]
10より小さい
10
10より大きい
まとめ
FizzBuzzのコードを書いてみる
input_num = gets.chomp.to_i
range = 1..input_num
for x in range
if x % 3 == 0 && x % 5 == 0
puts("#{x}: " + "FizzBuzz")
elsif x % 3 == 0
puts("#{x}: " + "Fizz")
elsif x % 5 == 0
puts("#{x}: " + "Buzz")
else
end
end
[実行結果]
15
3: Fizz
5: Buzz
6: Fizz
9: Fizz
10: Buzz
12: Fizz
15: FizzBuzz
最後に
paizaなどを通して簡単なアウトプットを繰り返しましょう
参考文献
Progate: https://prog-8.com/slides?lesson=72%2C75%2C78%2C81%2C85