+54 911 66509220

Blog

Blog
28 Jan 2015

Tutorial de Ruby – Parte 11 – Cadenas

/
Creado por
/
Comentarios0

ruby-mini-logo8.2. Cadenas

A continuación examinaremos el programa acertijo del capítulo sobre las cadenas

 

01 words = [’foobar’, ’baz’, ’quux’]

02 secret = words[rand(3)]

03

04 print “adivina? “

05 while guess = STDIN.gets

06 guess.chop!

07 if guess == secret

08 print “¡Ganas!\n”

09 break

10 else

11 print “Lo siento. Pierdes\n”

12 end

13 print “adivina? “

14 end

15 print “La palabra era “, secret, “.\n”

 

En este programa se utiliza una nueva estructura de control, while. El código entre el while y su correspondiente end se ejecutará repetidamente mientras la condición especificada se mantenga cierta.

 

rand(3) de la línea número 2 devuelve un número aleatorio dentro del rango de 0 a 2. Este número se utiliza para extraer uno de los elementos del array words.

 

En la línea 5 se lee una línea de la entrada estándar con el método STDIN.gets. Si aparece el fin del fichero (EOF – End Of File), gets devuelve nil. Por lo tanto el código asociado con el while se repetirá hasta encontrar un ^D (o ^Z bajo DOS), que representa el fin de fichero.

 

En la línea 6 guess.chop! elimina el último carácter de guess; en este caso siempre el carácter de línea nueva.

 

En la línea 15 se imprime la palabra secreta. Se ha escrito como una sentencia print con tres argumentos (que se imprimen uno detrás del otro), pero hubiera tenido la misma efectividad el hacerlo con un único argumento escribiendo secret como #{secret} para resaltar que la variable se debe evaluar y no imprimir la palabra literal:

 

print “la palabra era #{secret}. \n”

Otras fuentes para consultar

  • http://diario-ruby-facil.blogspot.com.ar/2007/09/rubyiv-avanzando.html
  • http://codigoprogramacion.com/cursos/programacion-ruby/strings-en-ruby.htmlhttp://abaddon-gtz.blogspot.com.ar/2010/02/ruby-basico-manejo-de-cadenas.html
  • http://es.railsbridge.org/ruby/cadenas
  • http://www.railsymas.com/index.php/posts/cadenas-de-texto-en-ruby-parte-2
  • http://scripting-ruby.blogspot.com.ar/2012/12/funciones-de-cadena.html
  • http://blog.logicalbricks.com/node/73

Video — Tutorial Ruby 8: Manejo de Cadenas

¿Tienes alguna consulta?
¿Quieres compartir algún código?

Leave a Reply

Your email address will not be published.

* Copy This Password *

* Type Or Paste Password Here *

24,099 Spam Comments Blocked so far by Spam Free Wordpress

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

This site uses Akismet to reduce spam. Learn how your comment data is processed.