#!/usr/bin/env ruby
# -*- coding: utf-8 -*-

printf("=========================\n")
while true
  puts("【ホーム】")
  puts(" [1]じゃんけん")
  puts(" [2]おみくじ")
  puts(" [3]計算クイズ")
  puts(" [4]10ピタゲーム")
  puts(" [5]タイマー")
  puts(" [6]ストップウォッチ")
  puts(" [7]ゆびすま")
  puts(" [8]あっちむいてホイ")
  puts(" [その他]アプリを終了する")
  print(" 選択…")
  a = gets.to_i
  if a == 1
    te = ["パー","チョキ","グー"]
    srand()
    f = 0
    g = 0
    print("=========================\n")
    print("【じゃんけん】\n")
    print(" キーをしてスタート\n")
    b = gets.to_i
    print(" さいしょはグー\n")
    sleep(1)
    while g == 0
      if f == 0
        print(" じゃんけん\n")
      elsif f == 1
        print(" あいこで\n")
      else
        print(" しょっしょで\n")
      end
      printf(" パー(1)チョキ(2)グー(3)\n ")
      c = gets.to_i
      d = te[c - 1]
      e = te[rand(3) - 1]
      print(" ポン!\n")
      printf(" あなた[%s] 相手[%s]\n ",d,e)
      f = f + 1
      if d == "パー" && e == "チョキ" || d == "グー" && e == "パー" || d == "チョキ" && e == "グー"
        print("あなたの負け…\n")
        g = 1
      elsif e == "パー" && d == "チョキ" || e == "グー" && d == "パー" || e == "チョキ" && d == "グー"
        printf("あなたの勝ち!!\n")
        g = 1
      else
      end
    end
    printf("=========================\n")
  elsif a == 2
    printf("=========================\n")
    printf("【おみくじ】\n")
    srand()
    kuji = ["大吉","中吉","小吉","吉","凶"]
    h = kuji[rand(5)]
    printf(" キーを押してスタート\n")
    i = gets.chomp
    printf(" 結果は%sでした。\n",h)
    printf("=========================\n")
  elsif a == 3
    l = 1
    printf("=========================\n")
    printf(" 【計算クイズ】\n")
    printf(" 何算をしますか?\n")
    printf("  たし算[1]  ひき算[2]\n")
    printf("  かけ算[3]\n")
    printf(" 何算…")
    ag = gets.to_i
    printf(" 何問しますか?\n")
    printf(" 問題数…")
    q = 0
    r = 0
    j = gets.to_i
    printf(" キーを押してスタート\n")
    k = gets.chomp
    v = Time.now.to_i
    while j > 0
      printf(" %d問目\n",l)
      srand()
      if ag == 1
        m = rand(19) + 1
        srand()
        n = rand(19) + 1
        printf("  %d + %d= ? ",m,n)
        o = m + n
      elsif ag == 2
        m = rand(9) + 11
        srand()
        n = rand(9) + 1
        printf("  %d - %d= ? ",m,n)
        o = m - n    
      elsif ag == 3
        m = rand(8) + 1
        srand()
        n = rand(8) + 1
        printf("  %d ×%d= ? ",m,n)
        o = m * n
      else
        m = rand(19) + 1
        srand()
        n = rand(19) + 1
        printf("  %d + %d= ? ",m,n)
        o = m + n
      end
      p = gets.to_i
      if o == p
        printf(" 正解!!\n",o)
        q = q + 1
      else
        printf(" 不正解…答えは%sです。\n",o)
        r = r + 1
      end
      j = j - 1
      l = l + 1
    end
    w = Time.now.to_i
    x = w - v
    printf("  正解[%d]  不正解[%d]\n",q,r)
    printf("  タイム[%d秒]\n",x)
    printf("=========================\n")
  elsif a == 4
    printf("=========================\n")
    printf(" 【10ピタゲーム】\n")
    printf(" 何秒で止める?\n")
    printf(" 秒数…")
    ae = gets.to_i
    printf(" %d秒ぴったりで止めよう\n",ae)
    printf(" キーを押してスタート\n")
    z = gets.chomp
    aa = Time.now.to_f
    printf(" キーを押してストップ\n")
    ab = gets.chomp
    ac = Time.now.to_f
    ad = ac - aa
    af = ad - ae
    printf(" 結果は%f秒、\n",ad)
    printf(" 差は%f秒でした。\n",af)
    printf("=========================\n")
  elsif a == 5
    printf("=========================\n")
    printf(" 【タイマー】\n")
    printf(" 何秒はかりますか\n")
    printf(" 秒数…")
    s = gets.to_i
    printf(" キーを押してスタート\n")
    t = gets.to_i
    sleep(s)
    printf(" %d秒立ちました\n",s)
    printf("=========================\n")
  elsif a == 6
    printf("=========================\n")
    printf(" 【ストップウォッチ】\n")
    printf(" キーを押してスタート\n")
    u = gets.chomp
    printf(" スタート\n")
    kaisi = Time.now.to_f
    printf(" キーを押してストップ\n")
    teisi = gets.chomp
    printf(" ストップ\n")
    syuryo = Time.now.to_f
    jikan = syuryo - kaisi
    printf(" 時間は%f秒でした\n",jikan)
    printf("=========================\n")
  elsif a == 7
    ag = 0
    an = 1
    printf("=========================\n")
    printf(" 【ゆびすま】\n")
    ah = 2
    ai = 2
    while true
      printf(" 手の数\n  相手[%d] 自分[%d]\n",ah,ai)
      while true
        if an == 1
          puts(" 自分のターン")
        elsif an == 2
          puts(" 相手のターン")
        end
        printf("  何本指を出す?:")
        aj = gets.chomp.to_i
        if aj >= 0 && aj <= ai
          break
        else
          redo
        end
      end
      srand()
      ak = rand(ah + 1)
      if an == 1
        while true
        printf("  予想は?:")
        al = gets.chomp.to_i
        if al >= 0 && al <= (ah + ai)
          break
        else
          redo
        end
        end
      elsif an == 2
        srand()
        al = rand(ah + ai)
      end

      printf(" 出した手の数\n  相手[%d] 自分[%d]\n 手の数の合計\n  [%d]\n 予想した手の数\n  [%d]\n",ak,aj,ak + aj,al,)
      if al == ak + aj
        if an == 1
          ai -= 1
        elsif an == 2
          ah -= 1
        end
      end
      sleep (2)
      if an == 1
        an = 2
      elsif an == 2
        an = 1
      end
      if ai == 0
        puts(" 自分の勝ち! やったね!")
        printf("=========================\n")
        break
      elsif ah == 0
        puts(" 相手の勝ち…残念…")
        printf("=========================\n")
        break
      else
        redo
      end
    end
  elsif a == 8
    printf("=========================\n")
    printf(" 【あっちむいてホイ】 \n")
    te = ["パー","チョキ","グー"]
    srand()
    ap = 0
    aq = 0
    au = 0
    print(" キーをしてスタート\n")
    ao = gets.to_i
    print(" さいしょはグー\n")
    sleep(1)
    while ap == 0
      if aq == 0
        print(" じゃんけん\n")
      elsif aq == 1
        print(" あいこで\n")
      else
        print(" しょっしょで\n")
      end
      printf(" パー(1)チョキ(2)グー(3)\n ")
      ar = gets.to_i
      as = te[ar - 1]
      at = te[rand(3) - 1]
      print(" ポン!\n")
      printf(" あなた[%s] 相手[%s]\n ",as,at)
      aq = aq + 1
      if not as == at
        if as == "パー" && at == "チョキ" || as == "グー" && at == "パー" || as == "チョキ" && at == "グー"
          au = 1
        elsif at == "パー" && as == "チョキ" || at == "グー" && as == "パー" || at == "チョキ" && as == "グー"
          au = 2
        end
        puts(" あっちむいて…")
        if au == 1
          print(" どっちを向く?\n 上[1] 下[2] 右[3] 左[4]")
        else
          print(" どっちを向くと思う?\n 上[1] 下[2] 右[3] 左[4]")
        end
      else
      end
    end
    printf("=========================\n")
  else
    break
  end
  sleep(1)
end
printf("=========================\n")

