Estructuras de Control
Pues al igual que en C, PHP, Pascal tenemos estructuras de control bastante similares que tienen distintas aplicaciones dependiendo del problema que deseamos solucionar
Operadores condicionales
En Perl podemos los siguientes operadores condicionales
$a == $b #la variable $a es numéricamente igual a la variable $b
$a != $b #la variable $a es distinta a la variable $b
$a >= $b #la variable $a es numéricamente mayor o igual a la variable $b
$a <= $b #la variable $a es numéricamente menor o igual a la variable $b
$a eq $b #la cadena $a es idéntica a la cadena $b
$a ne $b #la cadena $a no es igual a la cadena $b
Estructura de control FOR
Esta estructura tiene la siguiente sintaxis:
for (asignacion; condición, incremento){
#acciones
}
por ejemplo:
#!/usr/bin/perl
#Comenzamos haciendo un ejemplo con la estructura de control FOR
for ($i = 0; $i < 10; ++$i) {
print $i.' a la 2 potencia es '. $i**2;
print "\n";
}
Al ejecutar el programita, si no huba algún error veremos lo siguiente
0 a la 2 potencia es 0
1 a la 2 potencia es 1
2 a la 2 potencia es 4
3 a la 2 potencia es 9
4 a la 2 potencia es 16
5 a la 2 potencia es 25
6 a la 2 potencia es 36
7 a la 2 potencia es 49
8 a la 2 potencia es 64
9 a la 2 potencia es 81
Estructura de control WHILE
La sintaxis para esta estructura de control es la siguiente:
while (condicion){
#acciones
}
Es muy fácil que caigamos en un bucle infinito sí no tenemos el cuidado de escribir bien el incremento o la acción que determinará el término del ciclo WHILE. Proseguiremos con un ejemplo sencillo:
#!/usr/bin/perl
#ejemplo que ilustra el uso de la estructura de control WHILE
print "\nComienza una cuenta regresiva\n";
$i=10;
while ($i>0){
print "$i\n";
$i--;
}
Lo cual nos tendrá que arrojar la siguiente salida:
Comienza una cuenta regresiva
10
9
8
7
6
5
4
3
2
1
Estructura de control DO-WHILE
A diferencia de la estructura de control WHILE, en esta primero se entra al ciclo y posteriormente se evalúa la condición, en el WHILE primero se evalúa la condición y después se entra al ciclo.
do{
#acciones
}
while (condicion);
Recordemos que es importante hacer la asignación y el incremento para que la estructura de control funcione correctamente. Ahora bien mostraré un ejemplo del uso de DO-WHILE
#!/usr/bin/perl
print "\nEmpieza de nuevo la cuenta regresiva\n";
$i=10;
do{
print "$i\n";
$i--;
}
while ($i>0);
Lo que nos producirá la siguiente salida
Empieza de nuevo la cuenta regresiva
10
9
8
7
6
5
4
3
2
1
Estructura de control FOREACH
Para recorrer una variable de tipo array o cualquier otra estructura como líneas de archivos podemos hacer uso de esta estructura de control que tiene la siguiente sintaxis:
foreach $pivote (@arreglo){
#acciones
}
Y para ilustrar el uso de esta estructura de control véase el siguiente ejemplo
#!/usr/bin/perl
#ejemplo ilustrativo de foreach
#declaramos una variable de tipo arreglo
@musica = ("jazz","country","latin","salsa","cumbia");
#recorremos el arreglo @musica usando como variable auxiliar $genero
foreach $genero (@musica){
print "$genero\n";
}
el cual, después de ser ejecutado nos proporcionará la siguiente salida
jazz
country
latin
salsa
cumbia