A煤n no tienes acceso a esta clase

Crea una cuenta y contin煤a viendo este curso

Curso de Ruby

Curso de Ruby

Sim贸n Soriano

Sim贸n Soriano

Uso de condicionales

9/39
Recursos

Aportes 13

Preguntas 4

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Condiciones

En Ruby, nil y false significan falso, todo lo dem谩s (incluyendo true, 0) significan verdadero. En Ruby, nil es un objeto: por tanto, tiene sus m茅todos, y lo que es m谩s, puedes a帽adir los m茅todos que se quieran.

M茅todos condicionales

  • if -> Se ejecuta si se cumple la condici贸n
  • elsif -> Se ejecuta si la condici贸n 鈥渋f鈥 no se cumple, y se pueden anidar tantos como sean necesarios
  • else -> Se ejecuta si no se cumplen las funciones antes descritas
  • case -> Esta instrucci贸n es muy parecida al if: se crean una serie de condiciones, y se ejecuta la primera condici贸n que se cumpla.
  • unless -> Ruby tiene una forma contraria al if: la instrucci贸n unless. Y digo contraria, por que en if se ejecutaba el bloque (do 鈥 end) si se cumpl铆a la condici贸n; con unless se ejecutar谩 el bloque mientras NO se cumpla.

Operadores de comparacion

  • == igual
  • != distinto
  • = mayor o igual que

  • <= menor o igual que
  • mayor que

  • < menor que

Conceptos extra铆dos de :

En casos de que queramos hacer if en una sola linea, lo podemos hacer de la siguiente manera:

puts "Pantalla de admin" if role == :admin 

Condicionales


Si quieren tener ayuda del editor de textos al escribir c贸digo en Ruby, instalen el plugin Ruby para esto.

Para declarar una estructura l贸gica de If, lo hacemos de la siguiente manera

#b谩sica
if condicion
    
end

# Una condional m谩s grande
if condicion
    
elsif otra_condicional
    
else
    
end

# C贸digo de la condicional
is_authenticated = false

if is_authenticated
    puts "Pantalla de admin"
else
    puts "Pantalla de login"
end

Para ejecutar en la terminal un archivo Ruby poner

ruby archivo.rb

Manejar condicionales en Ruby es relativamente f谩cil

role = :otro

if role == :admin
    puts "Pantalla de admin"
elsif role == :superadmin
    puts "Pantalla de superadmin"
else
    puts "Pantalla de login"
end

Un peque帽o aporte. En Ruby todo es un objeto, por lo tanto:

- true es una instancia de la clase TrueClass
- false es una instancia de la clase FalseClass
- nil es una instancia de la clase NilClass

nil y false tienen como valor booleano false, cualquier otro objeto tiene valor boolenao true

驴Que plugins recomiendan para desarrollo en Ruby con VSCode?

Instal茅 Ruby 3.1 en Windows 11 y no me servia en la consola correr el comando ruby. Resulta que ruby no se agreg贸 al path al instalarse y tuve que hacerlo manualmente:

En un file explorer (Win + E) le di clic derecho a This PC > Properties > Advanced System Settings > Environment Variables 鈥 > System Variables

En ese listado buscar la variable Path y darle editar (comprobar que no aparece ruby) y darle al bot贸n de New, ah铆 escribir la ruta al bin de mi ruby, en mi caso era: C:\Ruby31-x64\bin despues darle OK, OK, reiniciar mi terminal y/o VSCode y ya por fin pude correr el comando ruby en mi terminal

Profe

Debi贸 considerar dentro del curso a la gente que entr贸 desde 0 y ense帽ar a vincular V.Code con Ruby y mucho m谩s a correr el condicionales.rb

Condiciones en ruby

is_authenticated = true

if is_authenticated
    puts "Pantalla de admin"
else
    puts "pantalla de login"
end

role = :admin

if role == :admin
    puts "Pantalla de admin"
elsif role == :superadmin
    puts "Pantalla de super admin"
else
    puts "Pantalla login"
end

** Operadores de comparacion**
! :niega la variable
== :igual
!= :distinto

= :mayor o igual que
<= :menor o igual que
:mayor que
< :menor que

mi ejercicio:

is_authenticated = :ultraadmin

if is_authenticated == :admin
puts "Pantalla de admin"
elsif is_authenticated == :superadmin
puts "Pantalla de login"
elsif is_authenticated == :ultraadmin
puts "Pantalla de encuentro"
else
puts "Pantalla de final"
end

ayuda? sucede que el interrete que ocupo Jruby, no me permite invocar los archivoda solo me sale como se muestra en pantalla. alguien puede ayudarme con esto?

Hi there! 驴Por qu茅 se coloca : antes de admin en todos los casos, 驴no funciona igual sin esos dos puntos o por qu茅 son necesarios? Thanks!

Wow una cosa que me estoy fiajndo es que no ocupamos ;
:麓( que usad jajajaja