Tipos de datos en Perl Arreglos

Slides:



Advertisements
Presentaciones similares
Estructuras de control
Advertisements

PHP. PHP (Hypertext Preprocessor) preprocesador de Hipertexto Se ejecuta en el servidor El resultado de ejecutarse es código HTML Manual oficial en
Mercadotecnia Electrónica
Clase 2 Tipos de datos Asignación de valores Estructura IF Ejercicios
PHP-MYSQL OPERADORES EN PHP
Fundamentos de la Programación Estructurada
Desarrollo de Aplicaciones para Internet
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
Tema 2: Lenguaje PHP básico
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Tema: Funciones en Excel (II) Funciones de Texto
3. INTRODUCCIÓN A LA PROGRAMACIÓN
Teoría de lenguajes y compiladores
Estructuras de control
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
La estructura básica de los programas en java, algo a tener en cuenta y que debemos recordar siempre es el archivo debe llevar el nombre de la clase con.
TÉCNICO EN PROGRAMACIÓN DE SOFTWARE Instructor: Ingeniero Adrián Guerrero Taborda
Al término de la clase, el alumno reconoce las ventajas de usar JAVASCRIPT para un proyecto web.
Ingeniero Anyelo Quintero
Tema 3 Entrada y Salida.
Fundamentos de Programación
PROGRAMACION II.  Es un conjunto de datos no necesariamente del mismo tipo, los cuales se podrán manipular o realizar cualquier operación sobre cada.
Matrices Es una estructura homogénea, compuesta por varios elementos, todos del mismo tipo y almacenados consecutivamente en memoria A cada elemento se.
FUNDAMENTOS DE PROGRAMACIÓN
Archivos.
Informática Ingeniería en Electrónica y Automática Industrial
PHP TODO SOBRE PHP.
FUNCIONES DE TEXTO Esther Lucia Quiñones Geovanny Bastidas.
Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Else Elseif en PHP Programación en Internet II. Else Elseif en PHP Programación en Internet II Universidad de Guadalajara | Centro Universitario de la.
El Lenguaje C en CGI El ANSI C, uno de los lenguajes de programación más conocidos, utiliza la función getenv(),definida en el archivo de cabecera stdlib.h,
Archivos Programación I MC Beatriz Beltrán Martínez.
EXPRESIONES Y SENTENCIAS
FILTROS. Un filtro es un programa que recibe una entrada, la procesa y devuelve una salida. Relacionando filtros simples podemos hacer prácticamente cualquier.
Programación Básica con “NQC” Pedro F. Toledo – Patricio Castillo 18/08/2006.
Algoritmo Ing. Maria Rosana Heredia
Introducción a la programación
Elementos básicos del lenguaje
2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 8: Control del flujo en BASH Nombre unidad de.
COMPUTO III Ing. Jimmy Ojeda Arnica.
Términos algoritmo diseñar algoritmo implementar algoritmo
PEDRO ALBERTO ARIAS QUINTERO. El shell es un intérprete de órdenes, los intérpretes de órdenes de Linux son auténticos lenguajes de programación. Como.
CARACTERÍSTICAS Es un lenguaje de programación estructurado de propósito general. Está estrechamente asociado al sistema operativo UNIX, ya que el propio.
INTRODUCCION A LA PROGRAMACION
PRINCIPIOS DE PROGRAMACIÓN
PHP con Bases de Datos Tema 5 Funciones Introducción Valor de una Función Función para obtener fecha actual. Documentación de Funciones Funciones de Usuario.
2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 9: Funciones, variables y arreglos en BASH Nombre.
Se pueden incluir comentarios en cualquier parte de un programa pero deben delimitarse con llaves o con paréntesis y asterisco:
Presente un cuestionario con los aspectos mas importantes sobre los
“variables , sentencia if y bucles”
ACCESS  Para los campos Texto, esta propiedad determina el número máximo de caracteres que se pueden introducir en el campo. Siendo por defecto.
Tipos de Datos.
Práctica Profesional PHP.
Lic. Carla Aguirre Montalvo
Programación de Computadores
Manual PHP Básico Camilo Cartagena.
Lenguaje de programación c
ARREGLOS BIDIMENSIONALES MATRICES Son un espacio de almacenamiento continuo, que contiene una serie de elementos del mismo tipo de datos. Desde el punto.
 Las funciones son un conjunto de instrucciones que realizan una tarea específica. En general toman unos valores de entrada, llamados parámetros y proporcionan.
Expresiones Regulares
PROGRAMACIÓN Grupo de Modelamiento de Sistemas
Visual Basic Prof.: Carol Briones García. Uso de Archivos  Definición  Es un conjunto de información que se almacena en algún medio de escritura que.
Lenguaje ensamblador Conceptos introductorios. Formatos de Instrucción. Modos de Direccionamiento. Conjunto de instrucciones básico. Introducción al Lenguaje.
1 Métodos. 2 Un método es un conjunto de instrucciones definidas dentro de una clase, que realizan una determinada tarea y a las que podemos invocar mediante.
Prof. Jonathan Silva Ingeniería Civil – Informática I Ingeniería Civil Informática I Clase 5.
Métodos en Java. Estructura de un programa en Java ► La relación con la vida misma la podemos ver en el siguiente comentario: Imaginemos que dos clases.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Excel 2013 Informática en los negocios lci. Excel 2013  ¿Qué es un RANGO en Excel?  Es un conjunto de celdas contiguas que pueden ser seleccionadas.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Transcripción de la presentación:

Tipos de datos en Perl Arreglos También podemos acceder a varios elementos de un array de la forma @nom_variable[indice1,...,indicen], por ejemplo: print @Alumnos[0,1]; imprimirá el primer y segundo elemento del array @Alumnos. Otra forma de acceder a los elementos de un array es usando el operador rango .. , si quisiéramos imprimir todos los valores desde un índice i hasta un indice j deberíamos utilizar el siguiente formato @nom_variable[i..j], por ejemplo: print  @Alumnos[0..2];

Tipos de datos en Perl Arreglos Asociativos Los arreglos asociativos se indexan mediante cadenas. Cada uno de los elementos del arreglo asociativo maneja la combinación elemento/valor, por ejemplo, %mes=(‘enero’,31, ‘febrero’,28); Los arreglos asociativos se reconocen porque comienzan con el símbolo % ( por ejemplo, %mes). Se tiene acceso a los elementos individuales utilizando cadenas especificas encerradas entre llaves y con el uso del símbolo @

Tipos de datos en Perl %empleados = ( “Ingeniero",100,“contador",20); Si queremos acceder a un elemento de un array asociativo, debemos seguir el siguiente formato @nom_variable { clave }. Por ejemplo: $Numero_Ing=10; $sueldos_ing = @empleados {“Ingeniero"} * $Numero_Ing;

Operadores de Perl

Operadores de Perl

Operadores de Perl Operadores de Comparación

Operadores de Perl cmp Comparar caracteres, retorna 0 si los caracteres son iguales; 1 si la cadena de la derecha se encuentra al comienzo de la de la izquierda; y -1 en el caso contrario. Ejemplo   ‘hola' cmp ‘hola' RETORNA 0                ‘hola alumnos ' cmp ‘hola'     RETORNA 1   ‘alumnos hola' cmp ‘hola'         RETORNA -1    ‘chao' cmp ‘hola‘ RETORNA -1

Operadores de Perl =~ if ($alumnos =~/Carol/) { ...} Indica la presencia de un patrón de comparación dentro de una variable que contiene una cadena de caracteres:            if ($alumnos =~/Carol/) { ...} verifica si la cadena ‘Carol' se encuentra dentro de alumnos y si es así, ejecuta el código entre llaves.

Operadores de Perl !~ Verifica la no existencia del patrón de búsqueda en una cadena. Ejemplo           if ($alumnos !~/Claudio/) { ...} si la cadena ‘Claudio' no esta en alumnos se ejecuta el código entre llaves.

Operadores de Perl Operadores de asignación = S le asigna a la variable que se encuentra a la izquierda, la expresión de la derecha.         $Saludo = 'Buenos dias'; asigna la cadena 'Buenos dias' a la variable Saludo.

Operadores de Perl Operadores de asignación =~ A parte de la función de verificación de existencia de un patrón, este operador también se utiliza para sustituir un patrón de comparación por otra cadena:           $var =~ s/good/bueno/; se reemplaza la ocurrencia de la cadena ‘good' por la cadena ‘bueno'.

Operadores de Perl .   Este operador concatena dos cadenas de caracteres, ejemplo:   $nombre = 'Juan ';     $nombre . ‘Pérez'; nombre contendrá la cadena Juan Péreez. x Este operador multiplica n veces la cadena de caracteres, ejemplo :   ‘c' x 5; esto contendrá ccccc

Operadores de Perl Operadores lógicos y Relacionales | Operador lógico 'o', de modo que retorna cierto siempre que cualquiera de los patrónes de busqueda que componen la expresión sea cierto y falso cuando los dos son falsos. Ejemplo           if ($var ~/paco | luis/) { ...} Es verdadero si en la cadena que se encuentra dentro de la varible existe una ocurrencia igual a 'paco' o igual a ‘luis'.

Operadores de Perl Operadores lógicos y Relacionales | if ($var == 5 | $var < 2) { ...} Es verdadero si la variable es igual a 5 o menor que 2.

Operadores de Perl & Operador lógico 'y' en expresiones regulares, permite confrontar 2 patrones. Por ejemplo:       if ($var =~ /auto & moto/) { ...} Es verdadero si existe una ocurrencia de la cadena ‘auto' y otra de la cadena 'moto'.

Estructuras de control Bifurcaciones 1. if (expresión) { Bloque de instrucciones} 2. if (expresión) else { Bloque de instrucciones} 3. if (expresión) elseif(expresión) { Bloque de instrucciones} ……. else { Bloque de instrucciones}

Estructuras de control Ciclos 1. while (expresión) { Bloque de instrucciones} 2. for(expresión; expresión; expresión) 3. foreach VAR (ARRAY) { Bloque de instrucciones} Se obteniene cada uno de los valores que contiene ARRAY y los vamos dejando en la variable VAR. Ejemplo: @Alumnos=(“Hugo",“Paco",“Luis"); foreach $Alumno (@Alumnos) {   print $Alumno "\n";  }

Subrutinas La sintaxis para declarar una subrutina es:  sub Nombre_subrutina { Bloque de instrucciones} Ejemplo :   sub Saludo  {   print  "HOLA Mundo\n";  } La llamada a la subrutina la haríamos usando:   do Nombre_subrutina(); &Nombre_subrutina;

Subrutinas Ejemplo: sub imprime { local ($cadena)=@_; print $cadena; } Las dos formas anteriores producen el mismo resultado. Sin embargo al utilizar do, siempre hay que poner los paréntesis. Si queremos pasar argumentos debemos pasar los argumentos entre estos paréntesis, y estos serán almacenados en el array de escalares @, es decir para saber el número y el valor de los argumentos pasados a una subrutina hay que leer de este array predefinido. Ejemplo:   sub imprime   {     local ($cadena)=@_;     print $cadena;   }     &imprime ("Hola Mundo \n");

Subrutinas También podemos devolver explícitamente un valor usando return, como en C.

Búsqueda de Patrones en texto Las expresiones regulares nos permiten evaluar o comparar la existencia de un patrón de búsqueda en una cadena o un valor determinado. Estas se utilizan para buscar patrones. Para buscar y reemplazar dicho patrón.

Evaluación y Sustitución de Patrones en texto

Evaluación y Sustitución de Patrones en texto Formatos: También es posible utilizar formatos para generalizar las búsquedas y evaluaciones: En el caso de las evaluaciones: $a =~/nom/; Podemos utilizar el formato i: $a =~/nom/i; Esta opción permite realizar la evaluación entre la variable y el patrón sin importar minúsculas o mayúsculas.

Evaluación y Sustitución de Patrones en texto En el caso de las sustituciones: $a =~s/p/r/; Podemos utilizar los siguientes formatos: a) i $a =~s/p/r/i; Esta opción permite realizar la sustitución entre la variable y el patrón sin importar minúsculas o mayúsculas. b) g $a =~s/p/r/g; Esta opción permite realizar la sustitución entre la variable y el patrón en todas las apariciones del patrón. En caso contrario solo se realiza en la primera aparición. c) e $a =~s/p/r/e; Esta opción permite evaluar sustitución (en este caso r) con valores devueltos por una función.

Evaluación y Sustitución de Patrones en texto Patrones de traducción Aquí se comparan uno a uno los caracteres del patrón de búsqueda con los de la cadena de sustitución. Si una ocurrencia coincide con uno de los caracteres del patrón se intercambia por su correspondiente en la cadena del patrón de sustitución. La sintaxis:     variable =~ tr/(patrón de búsqueda)/(cadena_a_traducir) Ejemplo: for(i=1;…;i++)   {      if( $var =~ /hola/ )      { print "Se ha encontrado la cadena hola'";}   }

Evaluación y Sustitución de Patrones en texto Supongamos que se tiene el siguiente arreglo: Los amigos de mis amigos son mis amigos while ()   {      $var =~ s/amigos/***/g;     print ;   } Esto nos imprimiría lo siguiente: Los *** de mis *** son mis ***

Evaluación y Sustitución de Patrones en texto Supongamos el siguiente ejemplo: while ()   {      $var =~tr/los/123/;     print ;   } Esto nos imprimiría lo siguiente: 123 amig2s de mis amig2s s2n mis amig2s

Evaluación y Sustitución de Patrones en texto Supongamos el siguiente ejemplo: while ()   {      $var =~tr/los/12/;     print ;   } Esto nos imprimiría lo siguiente: 122 amig22 de mi2 amig22 22n mis amig22

Evaluación y Sustitución de Patrones en texto Caracteres Especiales. ^ Comienzo de línea. Con este carácter expresamos el comienzo de una cadena. Por ejemplo supongamos que se quiere imprimir una variable si en su parte inicial se encuentra la cadena ‘Prefijo':   if($var  =~ /^Prefijo/)     {   print $var;     }

Evaluación y Sustitución de Patrones en texto Caracteres Especiales. $ Final de línea. Este expresa el final de una cadena o un registro de caracteres. Así, si deseamos escribir una variable si en su parte final contiene la cadena ‘sufijo‘:   if($var =~ /$sufijo/)     {       print  $var;  }

Evaluación y Sustitución de Patrones en texto [ ] corchetes. Se utilizan para delimitar un conjunto de caracteres que pueden encontrarse dentro de la variable. Ejemplo, queremos sustituir todas las ocurrencias de los números 1 ó 4 por la cadena 'X_X':           $var = '1sdffd3d546y547';            $var  =~ s/[14]/X_X/g;     print $var; la salida es:   X_Xsdffd3d5X_X6y5X_X7

Evaluación y Sustitución de Patrones en texto Cuando se utiliza el carácter ^ con los corchetes, queremos decir la no existencia de la cadena que está entre los corchetes. Ejemplo:           $var = '1s4s547';            $var =~ s/[^14]/X_X/g;            print $var; La salida:   1X_X4X_XX_X4X_X

Evaluación y Sustitución de Patrones en texto - Guión. Mediante este carácter denotamos un rango de caracteres o números. Por ejemplo, para sustituir todas las palabras minúsculas por palabras mayúsculas :  $var =~ tr/[a-z]/[A-Z]/;

Evaluación y Sustitución de Patrones en texto { } Llaves. Dentro de una expresión regular representa la longitud de una cadena. Por ejemplo una cadena de caracteres con tres caracteres ? se expresa de la siguiente manera:  /?{3}/

Evaluación y Sustitución de Patrones en texto . punto. Sirve para representar cualquier carácter. Por ejemplo, si queremos sustituir los cuatro primeros caracteres de una cadena:            $var = ‘Jorge Gutiérrez';            $var =~ s/.{5}/Claudio/;            print $var; La salida:  Claudio Gutiérrez

Evaluación y Sustitución de Patrones en texto Este caracter reemplaza la existencia de un dígito. Ejemplo queremos sustituir todos los dígitos de una variable por el carácter XXX:        $var = '1Gato Volador2';           $var =~ s/\d/XXX/;          print $var; la salida por pantalla es:  XXXGato VoladorXXX

Evaluación y Sustitución de Patrones en texto Los siguientes caracteres tienen un significado paralelo al anterior por lo que no se darán ejemplos de ellos:   \w . Expresa un carácter alfanumérico. \b . Expresa un espacio en blanco. \t . Significa un tabulador. \r . Expresa un retorno de carro. \n . Significa un final de línea. \s . Expresa un separador de cadena de caracteres.

Evaluación y Sustitución de Patrones en texto Los anteriores caracteres especiales, en su formato en mayúsculas significan lo contrario, esto es, \W expresa un carácter no alfanumérico, \D expresa un valor no numérico.

Evaluación y Sustitución de Patrones en texto Por último el carácter \ permite referenciar un carácter especial en PERL como un carácter normal, así por ejemplo la siguiente sentencia:      $var =~ s/\\d/XXX/g; Nos permite sustituir todas las ocurrencias de la cadena \d por XXX. Si dentro de la expresión hubiese estado escrito solo \d, la sustitución se realizaría en todos los valores numéricos. En general ocurre lo mismo con el resto de caracteres especiales de PERL.

Operadores de archivo Estos operadores se emplean para verificar en el sistema operativo los permisos de un archivo, o su naturaleza de ejecución, etc. A continuación se muestra los diferentes operadores: -r : indica si el archivo tiene permiso de lectura.  -W : indica si el archivo tiene permiso de escritura. -T : indica si el archivo es de tipo texto -e : indica si el archivo existe. -z : indica si el archivo tiene tamaño 0.  -s : indica si el archivo es mayor que 0.  -f : indica si el archivo es plano. -d : indica si se trata de un directorio.  -M : indica el número dias después de la última modificación  -B : indica si el archivo es binario.   -t : indica si el archivo esta abierto en un terminal.

Variables predefinidas Los siguientes nombres tienen un significado especial en PERL sólo incluiremos los más frecuentes, para una información más detallada consulte el manual de usuario: "$_"  contiene el contenido del último registro leído de un fichero. "$. " contiene el número de la última línea leída de un fichero. "$/ " separador de campo para la entrada. "$,"  separador de campo para la salida, aplicable a print. "$\ " separador de registro para la salida, aplicable a print. "$~" contiene el nombre del formato o report definido para la salida actual. "$^" contiene el nombre de la cabecera de formato o report definido para la salida actual. "$$" número de proceso perl scripts que se esta ejecutando actualmente. "$&" representa el valor de la última cadena de caracteres comparada exitosamente. "$`" y "$'" estos dos términos se utilizan conjuntamente para separar cadenas de caracteres comparadas exitosamente.

Variables predefinidas "$!" contiene el valor actual de ERRNO, es decir, el último error acontecido. "$0" contiene el nombre del fichero que hemos dado a nuestro perl script. "$[" contiene el valor del primer indice de una array de escalares, por defecto es 0. "$<" uid real del proceso actual. "$>" uid efectivo del proceso actual. "$(" gid real del proceso actual. "$)" gid efectivo del proceso actual. @ARGV contiene los parámetros pasados a nuestro perl script. %ENV array asociativo que contiene las variables de entorno bajo el que se ejecuta nuestro perl script.

Ejemplo open(Entrada,'prueba.prb') || die "$!\n";  while(<Entrada>)   {      if( $_ =~ /exito/ )      { print "Se ha encontrado la cadena ‘exito'";}   } Abre un fichero prueba.prb de tipo texto y lo asigna a la variable Entrada, Con el while recorrer todo el contenido del fichero. La variable $_ ( guarda el contenido de la última línea del fichero definido como entrada);Verifica a través del if si dentro del registro existe una cadena igual a 'exito'.