miércoles, 7 de agosto de 2013

Conceptos básicos VII : Bucles

 Hoy veremos lo que son los bucles, un bucle es una repetición continua de algún valor y que lleva alguna sentencia para que esta termine, aprenderemos: while , for , do,  .each, .times y el break, que no es un bucle, sino que es el que corta los bucles a media...

----------------------------------- WHILE ------------------------------------------

 El while es una repetición de cosas hasta que se cumpla una sentencia, por ejemplo:

def while_m
  local = 0
  while (local <= 10)
    print local
    local += 1
  end
end
while_m

  se imprimirá cada numero del 0 al 10 hasta que local sea 10, después de esto se termina y no imprimirá más numeros

def while_m
  local = 0
  while (local < 10)
    print local
    local += 1
  end
end
while_m

 Se imprimirá cada numero del 0 al 9, debido a que, cuando sea local = 10, no correra el print

--------------------------------  FOR ------------------------------------------------------

 El for no usa una sentencia directa para usarlo,sino que se detalla, se puede hacer de esta manera

def for_m
  local = [0, 23, "holo", 4.76 , false]
  for cantidad in local
    print cantidad
  end
end
for_m

---------------------------- DO & .EACH ---------------------------------------------------------

 Este método es más utilizado, por ejemplo si tenemos un array o matriz o arreglo (como quieran llamarle)
como el anterior ejemplo, podemos nombrar cada uno de la siguiente manera:

def do_each_m
  local = [0, 23, "holo", 4.76 , false]
  local.each do |cantidad|
    print cantidad
  end
end
do_each_m

 esto significa: "para cada (each) valor (cantidad) que esta en la variable (local), hacer (do): " , es simplemente eso y debajo de él, va lo que se quiera hacer, esta claro que cantidad es una variable, porque cambia a cada rato, y no es necesario definir a cuanto equivale...

La manera más tradicional de usar en los scripts es acortar todo lo que hace local en una sola linea, haciéndolo de esta manera:

def each_m
  local = [0, 23, "holo", 4.76 , false]
  local.each{ |cantidad| print cantidad }
end
each_m

 de esta manera se hace, colocando todo en una linea, vale decir que el do y el end desparecen y se coloca entre llaves lo que se quiere hacer



-------------------------- .TIMES -------------------------------------------------------------

 Este método es igual al anterior pero con un valor antes de hacer lo que se quiera, por ejemplo:

def times_m
  local = "holo"
  100.times {print local}
end
times_m

----------------------------  BREAK --------------------------------------------------------

 El break se usa para cortar la repeticion, se puede usar con el condicional if, veremos cada caso con
un break:


  • En el ejemplo 1 si queremos que llegue solo hasta 7 y luego terminar


def while_m
  local = 0
  while (local <= 10)
    print local
    break if local == 7
    local += 1
  end
end
while_m
  • En el ejemplo 2 si queremos que llegue antes del "holo":

def for_m
  local = [0, 23, "holo", 4.76 , false]
  for cantidad in local
    break if cantidad == "holo"
    print cantidad
  end
end
for_m

  • En el ejemplo 3 si queremos que se corte en 4.76:
def do_each_m
  local = [0, 23, "holo", 4.76 , false]
  local.each do |cantidad|
    print cantidad
    break if cantidad == 4.76
  end
end
do_each_m


  • En el ejemplo 4 si queremos que llegue hasta de 65

def times_m
  local = 1
  100.times {
    break if local > 65
    print local
    local +=1
  }
end
times_m






No hay comentarios:

Publicar un comentario