class Interfaz
Clase que permite representar un examen con sus preguntas y comprobar la puntuación del mismo.
Attributes
examen[R]
Atributo que tendrá el examen sobre el que se realizarán las comprobaciones.
Public Class Methods
new(examen)
click to toggle source
Inicialización del atributo examen.
# File exam/interfaz.rb, line 7 def initialize(examen) @examen = examen end
Public Instance Methods
compararRespuestas(respuestasUsuario)
click to toggle source
Método que en función de unas respuestas proporcionadas por el usuario comprueba la nota obtenida en el examen y se la muestra al usuario.
# File exam/interfaz.rb, line 15 def compararRespuestas(respuestasUsuario) iterador =0 respuestasCorrectas = 0 for i in @examen.preguntas do if i.respuestaCorrecta == respuestasUsuario[iterador] respuestasCorrectas += 1 end iterador +=1 end if respuestasCorrectas < (iterador/2)+1 mensaje = "Ha suspendido el examen: #{respuestasCorrectas}/#{iterador}" else if respuestasCorrectas == iterador mensaje = "Su nota es: Sobresaliente 10" else mensaje = "Ha aprobado el examen: #{respuestasCorrectas}/#{iterador}" end end mensaje end
to_s()
click to toggle source
Método que devuelve una cadena con las preguntas ordenadas de menor a mayor.
# File exam/interfaz.rb, line 38 def to_s cadena="" preguntas = @examen.preguntas.sort{|p1,p2| p1<=>p2} for i in preguntas do cadena +=i.to_s end cadena end