Class: ExamenIu
- Inherits:
-
Object
- Object
- ExamenIu
- Defined in:
- lib/examen/examen_iu.rb
Overview
Clase gestora de la Interfaz de usuario de la gema.
Instance Attribute Summary collapse
-
#exam ⇒ Object
Returns the value of attribute exam.
Instance Method Summary collapse
-
#initialize(pregunta) ⇒ ExamenIu
constructor
Crea una nueva instancia a partir de una pregunta.
-
#test(resp) ⇒ Object
Dado un conjunto de respuestas las evalua e indica cuales son correctas y cuales no.
-
#testinteractivo ⇒ Object
Muestra la Interfaz de Usuario solicitando por pantalla las respuestas e indicando si son correctas o no.
Constructor Details
Instance Attribute Details
#exam ⇒ Object
Returns the value of attribute exam.
5 6 7 |
# File 'lib/examen/examen_iu.rb', line 5 def exam @exam end |
Instance Method Details
#test(resp) ⇒ Object
Dado un conjunto de respuestas las evalua e indica cuales son correctas y cuales no.
11 12 13 14 15 16 17 18 19 |
# File 'lib/examen/examen_iu.rb', line 11 def test(resp) result = Array.new(@exam.list.count, 0) i = 0 @exam.list.each do |p| result[i] = (p.right.to_s.eql?resp[i].to_s)?1:0 i += 1 end result end |
#testinteractivo ⇒ Object
Muestra la Interfaz de Usuario solicitando por pantalla las respuestas e indicando si son correctas o no.
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/examen/examen_iu.rb', line 21 def testinteractivo result = Array.new(@exam.list.count, 0) i = 0 acertadas = 0 @exam.list.each do |p| pActual = p.to_s puts (i + 1).to_s + ") " + pActual STDOUT.flush opc = pActual.match(%r{#{gets.chomp}\)\s+(.*)})[1] result[i] = (p.right.to_s.eql?opc)?1:0 acertadas += 1 if (result[i] == 1) puts "> Respuesta #{((result[i] == 1)?"correcta":"incorrecta") + " (" + acertadas.to_s + "/" + result.size.to_s + ")"}\n\n" i += 1 end result end |