Class: Respanol::Examen::NumeroExamen
Constant Summary
collapse
- MAXIMO =
100
Constants inherited
from ExamenBase
ExamenBase::GAZA_CONDE
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods inherited from ExamenBase
#decir_que_no, emparejar?, #emparejar?, #ensayar, #felicitar, #gaza, gaza, #optener, #pedir
Methods included from Impresion
included
Constructor Details
#initialize(feminino = false) ⇒ NumeroExamen
Returns a new instance of NumeroExamen.
9
10
11
|
# File 'lib/respanol/examenes/numero_examen.rb', line 9
def initialize(feminino = false)
@klase = feminino ? FemininoNumero : Numero
end
|
Instance Attribute Details
#klase ⇒ Object
Returns the value of attribute klase.
4
5
6
|
# File 'lib/respanol/examenes/numero_examen.rb', line 4
def klase
@klase
end
|
#maximo ⇒ Object
24
25
26
|
# File 'lib/respanol/examenes/numero_examen.rb', line 24
def maximo
@maximo || MAXIMO
end
|
Instance Method Details
#escribir(rango = (1...MAXIMO)) ⇒ Object
35
36
37
38
39
40
|
# File 'lib/respanol/examenes/numero_examen.rb', line 35
def escribir(rango = (1...MAXIMO))
num = rand(rango)
ensayar("#{num} = ") do |s|
s.gsub(/\s+/, ' ').strip == @klase.numero_en_palabras(num)
end
end
|
#feminino ⇒ Object
13
14
15
16
17
|
# File 'lib/respanol/examenes/numero_examen.rb', line 13
def feminino
dup = self.dup
dup.klase = FemininoNumero
dup
end
|
#feminino! ⇒ Object
19
20
21
22
|
# File 'lib/respanol/examenes/numero_examen.rb', line 19
def feminino!
self.klase = FemininoNumero
self
end
|
#leer(rango = (1...maximo)) ⇒ Object
28
29
30
31
32
33
|
# File 'lib/respanol/examenes/numero_examen.rb', line 28
def leer(rango = (1...maximo))
num = rand(rango)
ensayar("#{@klase.numero_en_palabras(num)} = ") do |v|
v.to_i == num
end
end
|