and : && (半角&がふたつ)
hoge && gonyo (hogeでもありgonyoでもある。両方true)
puts '水戸黄門の付き人の名は?' person = gets.chomp if person == '助さん' && person == '格さん' puts 'ですよね' else puts 'ちがうよ!' end
えええ合ってると思ったのに。
moomin:ProgrammingRuby tomomi$ ruby variable.rb 水戸黄門の付き人の名は? 助さん格さん ちがうよ!
助さんと格さんを行違いで書こうと思ったがこれもダメ。なんで。1人分しか書いてないからか?
moomin:ProgrammingRuby tomomi$ ruby variable.rb 水戸黄門の付き人の名は? 助さん ちがうよ!
トライ2:
puts '水戸黄門の付き人ふたりの名は?' person1 = gets.chomp person2 = gets.chomp if person1 == '助さん' && person2 == '格さん' puts 'ですよね' else puts 'ちがうよ!' end
おおできた!そうか助さんと格さんは別の人物であるからperson1/person2という具合に分けて認識させないといけなかった。 'person1 = gets.chomp person2 = gets.chomp'の箇所はさらにすっきり書けそうな気がしていくつか試したけどダメでした。これで正しいのか。
また ターミナルに入力する順番はプログラムコードで指定した順でないとダメだということも判明。
moomin:ProgrammingRuby tomomi$ ruby variable.rb 水戸黄門の付き人ふたりの名は? 助さん 格さん ですよね moomin:ProgrammingRuby tomomi$ ruby variable.rb 水戸黄門の付き人ふたりの名は? 弥七 格さん ちがうよ! moomin:ProgrammingRuby tomomi$ ruby variable.rb 水戸黄門の付き人ふたりの名は? 格さん 助さん ちがうよ!
not : ! (びっくりひとつ)
! hoge (hogeじゃない。つまり結果がfalseであることがtrue)
puts 2+4 != 3+3 puts 4+1 != 2+2
! の解釈は異なる(not)ものを真(true)とする。
moomin:ProgrammingRuby tomomi$ ruby variable.rb false true