class Quiz::Quiz

clase Quiz que permite la definicion de un examen

Constants

Variable que se asigna a una respuesta para indicar que es correcta

WRONG

Variable que se asigna a una respuesta para indicar que es erronea

Public Class Methods

new(titulo, &preguntas) click to toggle source

almacena el titulo del examen y un bloque que analiza para obtener las preguntas string y bloque

# File lib/quiz/quiz.rb, line 13
def initialize(titulo, &preguntas)
  @titulo = titulo
  @preguntas = Array.new
  @counter = 0
  instance_eval &preguntas
end

Public Instance Methods

question(pregunta, respuestas) click to toggle source

cada cuestion es dividida en pregunta y respuestas, almacenando un array de questiones

string y hash
# File lib/quiz/quiz.rb, line 22
def question(pregunta, respuestas)
  nuevaPregunta = Question.new(pregunta, respuestas)
  @preguntas.push(nuevaPregunta) 
  @counter = 0
end
right() click to toggle source

diferencia las ocurrencias de las respuestas usando un contador @counter:

# File lib/quiz/quiz.rb, line 44
def right
  @counter += 1
  [@counter, RIGHT]
end
run() click to toggle source

ejecuta el examen

# File lib/quiz/quiz.rb, line 50
def run
  @acertadas = 0
  puts @titulo +"\n\n"
  @preguntas.each do |pre|
    if pre.consulta then
      @acertadas += 1
    end
  end
  puts "#{@acertadas} respuestas correctas de un total de #{@preguntas.size}"
end
to_s() click to toggle source

muestra el examen como un string

# File lib/quiz/quiz.rb, line 29
def to_s
  @cadena = @titulo + "\n"
  @preguntas.each do |q|
    @cadena = @cadena + q.to_s
  end
  return @cadena
end
wrong() click to toggle source

diferencia las ocurrencias de las respuestas usando un contador @counter:

# File lib/quiz/quiz.rb, line 38
def wrong
  @counter += 1
  [@counter, WRONG]
end