Newer
Older
Ruby / yobi.rb
#!/usr/bin/env ruby
# -*- coding: utf-8 -*-
ringo = []
banana = []
mikan = []
money = 500

puts "==============================================================================\n"
printf ("買い物。\nりんご(100円)\nバナナ(80円)\nみかん(120円)\nが売られています。\n買いたいものの名前を入力してください。\nいまあなたは500円持っています。\終わる場合は終わると入力してください。\n")
puts "==============================================================================\n"

while money >= 80
  print "入力してください:"
  buy = gets.chomp
  if buy == "りんご"
    if money >= 80
      puts "りんごを購入しました。"
      ringo << "りんご"
      money -= 80
      printf("残金は%d円です。\n--------------------------------------------------------------------------------\n",money)
    else
      puts "お金が足りません。\n--------------------------------------------------------------------------------"
    end
  elsif buy == "バナナ"
    if money >= 80
      puts "バナナを購入しました。"
      banana << "バナナ"
      money -= 80
      printf("残金は%d円です。\n--------------------------------------------------------------------------------\n",money)
    else
      puts "お金が足りません。\n--------------------------------------------------------------------------------"
    end
    redo
  elsif buy == "みかん"
    if money >= 120
      puts "みかんを購入しました。"
      mikan << "みかん"
      money -= 120
      printf("残金は%d円です。\n--------------------------------------------------------------------------------",money)
    else
      puts "お金が足りません。\n--------------------------------------------------------------------------------"
      redo
    end
  elsif buy == "終わる"
    puts "==============================================================================\n買い物終了。\n買ったものは..."
    if ringo.rength + banana.rength + mikan.rength <= 1
      if ringo.length > 0
        printf("りんごが%d個です。\n",ringo.length)
      end
      if banana.length > 0
        printf("バナナが%d個です。\n",banana.length)
      end
      if mikan.length > 0
        printf("みかんが%d個です。\n",mikan.length)
      end
    else
      puts "ありません。"
      printf("残金は%d円です。\n==============================================================================",money)
      break
    end
  else
    puts "それは売っていません。\n--------------------------------------------------------------------------------"
    redo
  end
end