Archivos por Etiqueta: Perl

Secuencias Numéricas Usando Dos Puntos En Perl

En el lenguaje de programación perl, podríamos escribir los números del 1 al 15, usando al forma básica con un arreglo:

#!/usr/bin/perl
#Este script imprime una 
#secuencia de numeros del 1 al 15

print(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);

O bien, podríamos hacer uso de la forma más económica siguiente, usando el operador de rango ..

#!/usr/bin/perl
#Este script hace uso del operador
#de rango .. para imprimir una 
#secuencia de numeros

print(1..15);

Ambos casos dan como resultado la salida

123456789101112131415

Vamos a revisar cada línea del programa:

#!/usr/bin/perl

Ésa es, como hemos visto, la llamada al intérprete de perl, y debe ir al principio de cada script.

#Este script hace uso del operador
#de rango .. para imprimir una 
#secuencia de numeros

Éstas líneas son unos comentarios, que indican de qué va el programa.

print(1..15);

Ésta línea es la parte importante del script. Un arreglo es un tipo de datos adecuado para almacenar una serie de elementos, creando así una lista. Los elementos de un arreglo son incluidos dentro paréntesis (). Dentro de ésos paréntesis, hemos escrito, en el primer programa, los números 123456789101112131415, en tanto que en el siguiente aparece 1..15. Esos dos puntos se llaman operador de rango. Éste operador funciona tomando el valor de la derecha y sumando 1 sucesivamente hasta alcanzar el valor numérico de la derecha. El siguiente script es un ejemplo de un uso distinto:

#!/usr/bin/perl
#Este script hace uso del operador
#de rango .. para imprimir una 
#secuencia de numeros

print(1,2,3,4..10,11);

Cada elemento del arreglo se separa por medio de una coma. Al llegar al elemento 4, aparece el operador de rango dos puntos, a partir de ahí se imprimen sucesivamente 5,6,7,8,9 y 10.
También es posible usar el operador con literales:

#!/usr/bin/perl
#Este script hace uso del operador
#de rango .. para imprimir una 
#secuencia de valores literales

print("A", "B".."z");

y la salida de éste script es la siguiente:

ABCDEFGHIJKLMNOPQRSTUVWXYZ

La razón de que ocurra ésto es que en el código ASCII, las letras del alfabeto se representan con números consecutivos.