Me preguntaba por qué cuando estoy tratando de obtener entradas diferentes que ignora la segunda entrada que tuve.Pregunta sobre "se pone" en ruby
#!/usr/bin/env ruby
#-----Class Definitions----
class Animal
attr_accessor :type, :weight
end
class Dog < Animal
attr_accessor :name
def speak
puts "Woof!"
end
end
#-------------------------------
puts
puts "Hello World!"
puts
new_dog = Dog.new
print "What is the dog's new name? "
name = gets
puts
print "Would you like #{name} to speak? (y or n) "
speak_or_no = gets
while speak_or_no == 'y'
puts
puts new_dog.speak
puts
puts "Would you like #{name} to speak again? (y or n) "
speak_or_no = gets
end
puts
puts "OK..."
gets
Como puede ver, ignoró por completo mi declaración while.
Esto es una salida de muestra.
Hello World!
What is the dog's new name? bob
Would you like bob
to speak? (y or n) y
OK...
posible duplicado de [función de impresión en ruby] (http://stackoverflow.com/questions/4415834/print-function-in-ruby) –
Para obtener sugerencias sobre cómo depurar su secuencia de comandos, consulte http://stackoverflow.com/questions/3955688/how-do-i-debug-ruby-scripts –