#!/usr/bin/env ruby # -*- coding: utf-8 -*- require 'csv' neta = CSV.read("quiz.csv", :headers => true) #mondai = neta["問題"] # "問題"の中身が配列になってる #santaku1 = neta["三択1"] #santaku2 = neta["三択2"] #santaku3 = neta["三択3"] #printf("%s\n",mondai[0]) # =>quiz.csvのA2 count = 0 # 今何問目なのか print("\e[2J") print("\e[H") neta.each{|row| count += 1 printf("第%d問\n",count) printf("%s\n", row["問題"]) santaku = [row["三択1"],row["三択2"],row["三択3"]] fuseikai = 0 while true if fuseikai == 3 num = 1 for i in santaku printf("%d => %s\n",num,i) num += 1 end end print("\e7") print"答えを入力..." kaitou = gets.chomp if kaitou == row["答え"] || fuseikai >= 3 && santaku[(kaitou.to_i)-1] == row["答え"] puts"正解!!" break else puts"不正解!" fuseikai += 1 sleep(0.5) print("\e8") # 以下endまで画面のリセット puts(" ") puts(" ") print("\e8") end end sleep(0.5) print("--------------------------\n") #何個でもいい仕切りの機能 } puts"終了!!" #puts "問題 "+ mondai[kazu]