Obteniendo Datos
Hasta ahora hemos visto métodos como puts que escriben en la pantalla. ¿Cómo
podemos hacer para recibir datos de los usuarios? Para esto podemos usar
lo métodos gets (get string) y chomp. El ejemplo p005metodos.rb nos
muestra su uso:
1 # gets y chomp 2 3 puts "En que ciudad vives?" 4 5 # STDOUT - constante global - la salida estándar del programa 6 # flush - vacía los datos almacenados temporalmente hacia el 7 # sistema operativo 8 STDOUT.flush 9 10 # gets - regresa una cadena y el caracter '\n' 11 # chomp - elimina el caracter '\n' 12 ciudad = gets.chomp 13 puts "La ciudad es " + ciudad 14 15 # para saber en qué objeto te encuentras 16 puts self
Cuando ejecutes el ejemplo anterior en SciTE, haz click en la ventana y escribe el nombre de tu ciudad.
STDOUT es una constante glabal representa la salida estándar del programa.
flush vacía todos los datos de IO al sistema operativo.
chomp es un método de las cadenas y gets recupera cadenas de tu teclado.
Debes haberte dado cuenta que gets regresa una cadena y el caracter \n.
chomp elimina este caracter.
Los datos pueden venir de muchas fuentes. En la típica aplicación Rails vienen de la base de datos. Como desarrollador Rails, puede ser que te encuentres usando relativamente pocas de estas fuentes porque Rails maneja estos datos por ti y por tus usuarios. Cuando envías datos a través del teclado, va a ser generalmente en una forma Web.
Tarea: Escribe un programa (p006ftoc.rb) que pida la temperatura en grados
Fahrenheit y despliegue el equivalente en grados Centigrados.
Para darle formato al resultado a, digamos, 2 lugares decimales, podemos usar
el método format del módulo kernel. Por ejemplo, si x = 45.5678,
format("%.2f", x) da como resultado 45.57. Otra manera es usar el método
round: puts(x*100).round.