class Question

Clase para la gestion de preguntas de multiples opciones.

Attributes

difficulty[RW]
qt[RW]
r1[RW]
wrong[RW]

Public Class Methods

new(args) click to toggle source

Inicializacion de una nueva instancia de una nueva pregunta a partir de un texto.

# File lib/Exam/question.rb, line 20
def initialize (args)
        @qt = args[:qt]
        raise ArgumentError, "Se esperaba una pregunta" unless args.key?(:qt)
        @r1 = args[:r1]
        raise ArgumentError, "Se esperaba la respuesta correcta" unless args.key?(:r1)
        @wrong = args[:wrong]
        raise ArgumentError, "Se esperaba un array con las respuestas incorrectas" unless args.key?(:wrong)
        args.has_key?(:difficulty)? (@difficulty = args[:difficulty]) : (@difficulty = 1)
end

Public Instance Methods

<=>(other) click to toggle source
# File lib/Exam/question.rb, line 10
def <=>(other)
        @difficulty <=> other.difficulty
end
==(other) click to toggle source
# File lib/Exam/question.rb, line 14
def ==(other)
        @qt.eql?other.qt
end
to_s() click to toggle source

Metodo to_s.

# File lib/Exam/question.rb, line 32
def to_s
        s = "#{@qt}\n"
        opt = [@r1] + @wrong
        opt = opt.shuffle
        i = 1
        opt.each do |o|
                s += "#{i}- #{o}\n"
                i += 1
        end
        s
end