ロト6風数当てゲーム

コマンドライン引数として自分の好きな6桁の数字を入力します.コンピュータ が発生した6桁の乱数と全部一致すると一億円!これで鍛えて本物に挑戦しましょ う.


#lot6.rb

num = rand(1000000)
zero = "0"
printf "当選番号は %s でした.\n", num

case num
  when 0
    ans = zero*6
  when 1..9
    ans = zero*5 + num.to_s
  when 10..99
    ans = zero*4 + num.to_s
  when 100..999
    ans = zero*3 + num.to_s
  when 1000..9999
    ans = zero*2 + num.to_s
  when 10000..99999
    ans = zero + num.to_s
  else
    ans = num.to_s
end

your_number = ARGV[0]
point = 0

point += 1 if your_number[0,1] == ans[0,1]
point += 1 if your_number[1,1] == ans[1,1]
point += 1 if your_number[2,1] == ans[2,1]
point += 1 if your_number[3,1] == ans[3,1]
point += 1 if your_number[4,1] == ans[4,1]
point += 1 if your_number[5,1] == ans[5,1]

case point
  when 6
    printf "全部的中,賞金1億円です.\n"
  when 5
    printf "5個的中,賞金100万円です.\n"
  when 4
    printf "4個的中,賞金1万円です.\n"
  when 3
    printf "3個的中,でも賞金はありません.\n"
  when 2
    printf "2個的中,でも賞金はありません.\n"
  when 1
    printf "1個的中,でも賞金はありません.\n"
  else 
    printf "残念でした.\n"
end


実行する場合には、Ktermなどのターミナルから

$ ruby lot6.rb 123456

のように入力して,遊びます.


Back