Hemos visto el manejo básico de las condiciones "if" y "while", pero estas órdenes dan más juego del que parece:
Para que el código fuente sea más legible, tenemos también órdenes parecidas pero que comprueban el caso contrario, como
unless (condición) {órdenes}
(las "órdenes" se ejecutaran en caso de que NO se cumpla la condición).
De igual modo, existe una orden similar a while, pero que repite mientras las condición no se cumple (o "hasta que la condición se cumpla"):
until (condición) {órdenes}
Además, estas 4 ordenes (if, while, unless, until) se pueden usar también como modificadores, al final de otra orden:
$y =5 if ($x <>
$y -- unless ($y==0);
print $y while($y <10);
...
pero hay más: también podemos encadenar varios "if" con "elsif":
if ($x <>
elsif ($x > 0) print "Es positivo";
else print "Es cero";
Si alguien viene de C y echa en falta "break" y "continue", también tiene equivalencias:
- "last" hace lo que el "break": termina el bucle (for, while o el que se esté usando).
- "next" equivale a "continue": termina la iteración actual del bucle y comienza la siguiente pasada.
- También existe "redo", que da una nueva pasada sin volver a comprobar la condición.
Por cierto, la orden "goto" existe, pero como su uso es evitable casi siempre, no comento mas sobre ella... ;-)
No hay comentarios:
Publicar un comentario