Página 1 de 1

Ruby: estructuras condicionales anidadas

Publicado: 26 Jun 2017, 01:39
por Computeitor
Hola.

Le estoy metiendo mano a Ruby, me gusta bastante; pero estoy teniendo dudas en cuanto a la forma de escribir el código. No sé cual sería la más correcta.

Estoy viendo este curso --> codigofacilito.com/ruby-2 y estoy haciendo los ejercicios de aquí para practicar --> https://www.tutorialesprogramacionya.com/rubyya/

Cuando llego a un ejercicio relativo a las estructuras condicionales anidadas me pide que el programa permita ingresar tres números y que diga cual de ellos es el mayor. Sé resolverlo; pero a mi forma, no sé si es la idónea. Aquí mi programa:

Código: Seleccionar todo

puts 'Por favor ingrese tres numeros: '

print 'Primer número: '
valor1 = gets.to_i

print 'Segundo número: '
valor2 = gets.to_i

print 'Tercer número: '
valor3 = gets.to_i

if valor1 > valor2 and valor1 > valor3
  puts "#{valor1} es el mayor de los tres"
elsif valor2 > valor1 and valor2 > valor3
  puts "#{valor2} es el mayor de los tres"
else valor3 > valor1 and valor3 > valor2
  puts "#{valor3} es el mayor de los tres"
end

gets()
La solución del ejercicio es diferente:

Código: Seleccionar todo

puts "Ingrese primer valor"
num1 = gets.to_i
puts "Ingrese segunda valor"
num2 = gets.to_i
puts "Ingrese tercer valor"
num3 = gets.to_i
if num1 > num2
  if num1 > num3
    puts num1
  else
    puts num3
  end
else
  if num2 > num3
    puts num2
  else
    puts num3
  end
end
   
Si bien la entiendo, se me hace más engorrosa...

¿Qué opinan?

Re: Ruby: estructuras condicionales anidadas

Publicado: 01 Jul 2017, 21:16
por Alejandro
Si tu forma funciona :rock:

No conozco mucho sobre la sintaxis de Ruby, pero por lo que veo ambas soluciones son muy parecidas.

Creo que lo importante, más allá de cuál sea la mejor, es que lograste encontrar una solución y además también entendiste otra que es la propuesta en el ejercicio.

O sea que aprendiste dos formas de hacerlo y eso es lo que cuenta :mf_bookread:

Re: Ruby: estructuras condicionales anidadas

Publicado: 01 Jul 2017, 21:44
por Computeitor
Gracias por la respuesta :alabanza: . Seguiré practicando :geek: