Newer
Older
Ruby / kairyougo1.rb
#!/usr/bin/env/ruby
# -*- coding: utf-8 -*-
#自己紹介プログラム
atatta=0
def komento(a,y)
  serifu=[a,y]
  srand()
  homeru=rand(serifu.length)
  printf("%s\n",serifu[homeru])
end

puts"こんにちは(こんばんは)"
sleep(0.8)
puts"私は、後藤美咲といいます。"
puts""
sleep(0.5)
puts"こんな顔です。(似てなくても許して)"
pid = spawn "display -geometry +350+460 自画像.鳥海塾提出プログラム.jpg"
sleep(3)
puts"私について紹介します。長いからって飽きないで!(いらない情報混ざってます)"
sleep(1)
puts""
require'csv'
data = CSV.read("testdata.csv", :headers => true)
data.each{|hako|
  printf("%s:%s\n",hako["内容"],hako["データ"])
  puts""
  printf("%s\n",hako["補足"])
  puts""
  puts"---------------------------------------"
  puts""
  sleep(3)
}
puts"私の情報はこれくらいです。役に立ち…ませんね。はい。"
sleep(1)
puts""
puts"急ですがな私の好きなこととしてなぞかけをしませんか?"
puts"2つの物事の共通点を言い当てるという、簡単な(ほんと?)ダジャレ遊びです。"
puts""
sleep(2)
puts"なぞかけをしますか? yes→1 no→その他"
kotae=gets.to_i
if kotae==1
  sleep(1)
  puts"それでは始めましょう!"
  sleep(0.3)
  puts"<ルール>"
  puts"答えのあとに、~でしょうをつけてください"
  puts"答え方が違うとはずれるので、再挑戦で違う言葉を試してください"
  puts"同音異義語なのでひらがなで答えてください。"
  puts"〇〇が大事 や 〇〇がいる と答えるところがあります。"
  puts""
  puts"Enterでスタート"
  gets
  sleep(1)
  puts"あっ!質問を忘れていました"
  print"タイムを計りますか? yes→1 no→その他"
  kotae=gets.to_i
  if kotae==1
    kaisi=Time.now
    kesan=1
  else
    kesan=0
  end
  require'csv'
  data_2=CSV.read("nazokake.csv",:headers=>true)
  data_2.each{|nazo|
  printf("%sとかけまして、%sととく。その心は?\n",nazo["かける"],nazo["とく"])  
  while true
    print"答えを入力:"
    x=gets.chomp
    if x==nazo["こたえ"]
      sleep(1)
      puts"正解!"
      komento("よくわかりましたね!","簡単でしたか?")
      sleep(0.5)
      atatta+=1
      puts""
      break
    else
      sleep(1)
      puts"不正解!"
      komento("残念…","またの機会に…")
      sleep(0.5)
      puts"再挑戦しますか? yes→1  no→0"
      kotae=gets.to_i
      if kotae==1
        redo
      elsif kotae==0
        printf("こたえは、%sでした!\n",nazo["こたえ"])
        break
      end
    end
  end}
  if kesan==1
    owari=Time.now
    time=owari-kaisi
    puts""
    print"あなたのタイムは"
    sleep(1)
    print"・"
    sleep(1)
    print"・"
    sleep(1)
    print"・"
    sleep(1)
    printf("%dでした!\n",time)
  else
  end
  puts""
  print"正答数は"
  sleep(1)
  print"・"
  sleep(1)
  print"・"
  sleep(1)
  print"・"
  sleep(1)
  printf("%d問でした!\n",atatta)
  sleep(1)
  puts""
  puts"どうでしたか?"
  sleep(1)
  puts"頑張って考えたので解いてくれて嬉しいです!"
else
  puts"残念!(ダジャレを披露したかった)"
end
sleep(2)
puts""
puts"これで自己紹介を終了します。"
sleep(1)
puts"ありがとうございました!"
Process.kill(:INT,pid)