En un arreglo x de n elementos los elementos del arreglo son: El número de índices determina la dimensionalidad del arreglo.
|
|
- Jaime Rico Agüero
- hace 7 años
- Vistas:
Transcripción
1 1 Arreglos (Arrays). Muchas aplicaciones requieren el procesado de múltiples datos que tienen características comunes. En tales situaciones es a menudo conveniente colocar los datos en un arreglo ó array, donde todos comparten el mismo nombre. Los datos individuales pueden ser caracteres, enteros, números en coma flotante, etc. Pero todos tienen que ser del mismo tipo y con el mismo tipo de almacenamiento. Cada elemento del arreglo es referido especificando el nombre del arreglo seguido por uno o más índices, con cada índice encerrado entre corchetes. Cada índice debe ser expresado como un entero no negativo: una constante entera, una variable entera o una expresión entera más compleja. En un arreglo x de n elementos los elementos del arreglo son: x[0], x[1],...,x[n-1]. El número de índices determina la dimensionalidad del arreglo. En matemáticas se usa la siguiente notación para representar vectores y matrices: Vector. Matriz Donde cada componente se denota como x i en el caso de vectores unidimensionales y a ij en el caso de matrices. A los símbolos i y j se los conoce como índices y dicen la posición de la componente dentro del vector-matriz. La dimensión de un vector es el número de sus componentes (n). El orden de una matriz es el número de sus filas y columnas (m,n)
2 2 Definición de un arreglo. Al definirse, cada arreglo debe acompañarse de una especificación de tamaño (número de elementos). En términos generales, un arreglo unidimensional puede expresarse como: tipo_vector nombre_vector[tamaño_vector]; tipo_dato nombre_arreglo[expresión_entera_positiva]; Donde tamaño_vector ( que debe ser una expresión entera positiva ) indica el número de elementos del arreglo. Ojo que para hacer referencia a estos elementos se debe tomar en cuenta que el primer elemento es el número cero. Veamos unos ejemplos en los que se realiza asignaciones a elementos de un vector: int i; int vector[3]; // Define un arreglo unidimensional de 3 elementos i=2; vector[i]=1; // Esto se puede hacer vector[0]=2; // Esto también vector[3]=5; // Obviamente ésto NO ya que no existe. Sólo 0,1 y 2 ( 3 elementos ) y unos ejemplos de lectura: i=vector[0]; i=vector[i]; vector[1]=vector[0]+vector[2]; vector[i-1]=1; vector[vector[i]]=0;
3 3 Las definiciones de arreglos pueden incluir, si se desea, la asignación de valores iniciales. Los valores iniciales deben aparecer en el orden en que serán asignados a los elementos individuales del arreglo, encerrados entre llaves y separados por comas. La forma general es: tipo_dato nombre_arreglo[expresión] = {valor1,valor2,...,valorn}; La presencia de la expresión, que indica el número de elementos del arreglo, es opcional cuando los valores iniciales están presentes. OJO, MUY IMPORTANTE: Todos los elementos del arreglo que no tienen asignados valores iniciales explícitos serán puestos automáticamente a cero. Por lo tanto si se desea asignar cero a todos los elementos de un arreglo, se podría tan solo declarar cero como el primer valor y el resto se hará de forma automática. P. ej.: int a[40]={0}; asignará cero a los elementos entre el cero y el treinta y nueve del arreglo. También aplica para arreglos multidimensionales. Ojo, esto no quiere decir que si se inicializa el primer elemento con uno el resto también lo será. NO. El primero será uno y el resto será cero. Nota importante acerca del procesamiento de un arreglo. En C no se permiten operaciones que impliquen arreglos completos. Así, si a y b son dos arreglos similares (mismo tipo de datos, misma dimensionalidad y mismo tamaño), las operaciones de asignación, comparación, etc., deben realizarse elemento por elemento. Arreglos multidimensionales. Los arreglos multidimensionales son definidos prácticamente de la misma manera que los arreglos unidimensionales, excepto que se requiere un par de corchetes para cada índice. En general: tipo_matriz nombre_matriz[n_filas][n_columnas]; ó incluso de más dimensiones: tipo_dato nombre_arreglo [indice_1][indice_2]...[indice_n];
4 4 Veamos unos ejemplos en los que se realiza asignaciones a elementos de una matriz: int i=1, j, k; int Matriz[2][3]; k=31000; j=2; Matriz[1][0]=2; // Correcto. Matriz[0][j]=k; // Bien. Matriz[i][j]=50; // Bien Matriz[j][k]=100; // No señor, no está permitido. Y unos ejemplos de lectura serían: k=matriz[i][j]; i=matriz[1][2]; Matriz[1][i]=5*Matriz[0][i]; j=matriz[5][j-1]; k=matriz[vector[i]][0]; Los arreglos multidimensionales también pueden ser inicializados al momento de su declaración. Un ejemplo específico con inicialización para un tipo bidimensional sería algo como: tipo_matriz nombre_matriz[][2]={
5 5 {0, 1}, {1, -3} }; aunque las llaves internas no son necesarias y sólo se usan para facilitar la lectura del arreglo por parte del programador. Lo que si es absolutamente necesario es que en la definición del arreglo se incluya al menos uno de los índices (ésto si es de dos dimensiones. Lo importante es que sólo puede faltar un solo índice como máximo y éste debe ser el primero). Ésto es porque el compilador necesita saber como serán organizados los datos. Si no se coloca uno de los índices entonces sólo se sabría que es un arreglo que contiene 4 elementos lo cual podría ser un arreglo de 4 filas y 1 columna, 2 filas y 2 columnas ó 1 fila y 4 columnas. Los arreglos multidimensionales se procesan de la misma manera que los arreglos unidimensionales, sobre la base de elemento a elemento. Sin embargo, se requiere algún cuidado cuando se pasan arreglos multidimensionales a una función. En particular, las declaraciones de argumentos formales dentro de la definición de función deben incluir especificaciones explícitas de tamaño en todos los índices excepto en el primero. Paso de arreglos a funciones. A diferencia de los tipos básicos, el contenido de los vectores y matrices siempre es pasado por referencia. El nombre de un arreglo se puede usar como argumento de una función, permitiendo así que el arreglo completo sea pasado a la función. Para pasar un arreglo a una función, el nombre del arreglo debe aparecer sólo, sin corchetes o índices, como un argumento actual dentro de la llamada a la función. El correspondiente argumento formal se escribe de la misma manera, pero debe ser declarado como un arreglo dentro de la declaración de argumentos formales. Cuando se declara un arreglo unidimensional como un argumento formal, el arreglo se escribe con un par de corchetes vacíos. Hemos visto que los argumentos son pasados a la función por valor cuando los argumentos son variables ordinarias. Sin embargo, cuando se pasa un arreglo a una función, los valores de los elementos del arreglo no son pasados a la función. En vez de ésto, el nombre del arreglo se interpreta como la dirección del primer elemento del arreglo. Esta dirección se asigna al correspondiente argumento formal cuando se llama a la función. El argumento formal se convierte por tanto en un puntero al primer elemento del arreglo. Como ya sabemos, los argumentos pasados de esta forma se dicen que son pasados por referencia en vez de por valor. Por tanto, si un elemento del arreglo es
6 6 alterado dentro de la función, esta alteración será reconocida en todo el ámbito de definición del arreglo. Veamos algunos ejemplos: void funcionmat(int M[2][2]); // Declara una función que recibira una matriz de 2x2. void main() { } int Matriz[2][2]; // Declara una matriz de 2x2 elementos Matriz[0][1]=1; // Inicializa el elemento (1,2) a 1 funcionmat(matriz); // llama a la función y le envia la dirección de Matriz. // OJO en como se le envia ( sin corchetes ). Esto se // traduce en la dirección del primer elemento de Matriz. printf( %d, Matriz*0+*1+); // Imprime el elemento que ya no contiene 1 porque... void funcionmat(int M[2][2]) { } M[0][1]*=-2; // ésto altera el valor del arreglo original. Recordar que es por referencia. Existen tres formas de pasarle un arreglo a una función. Éstas son: void funcion(int[10]); que es la clásica que hace uso de un arreglo delimitado. Esta también: void funcion(int []);
7 7 que es la versión con un array no delimitado. Y por último, como el paso de los arreglos a una función se hace por referencia, también podemos declarar una función que reciba un arreglo a través de los punteros. Por ejemplo para un arreglo unidimensional de enteros, basta con definir que la función recibirá un puntero a entero. El prototipo de una función que recibirá un arreglo unidimensional de enteros podría definirse: void funcion(int *x); Todo lo anterior hace lo mismo. Definir que la función recibirá una dirección de memoria que apunta a un entero. De hecho, como C no comprueba los límites de un arreglo, en lo que a la función se refiere, realmente no importa la longitud del arreglo. El compilador al leer: void funcion(int[32]); Hará exactamente lo mismo ya que el compilador instruye a funcion para recibir un puntero; realmente no crea un arreglo de 32 elementos. Cadenas de caracteres. En realidad en Lenguaje C no existe una variable de tipo string como tal. En C, lo que es conocido en otros lenguajes como strings son tan solo un tipo especial de arreglos. Específicamente son arreglos de caracteres. Una cadena de caracteres se representa por un arreglo unidimensional de caracteres. Cada carácter de la cadena se almacena en un elemento del arreglo. De hecho ésta es la forma más usada de arreglos unidimensionales. OJO. MUY IMPORTANTE: En la las operaciones con arreglos de caracteres, siempre se guarda automáticamente como último elemento el carácter nulo:'\0'. Esto indicará siempre el fin de la cadena. Así que para declarar un arreglo de caracteres es necesario que sean un carácter más que la cadena más larga que pueda contener. Ejemplo: char array1[10]=" "; declara un arreglo de caracteres de 10 elementos y es inicializado. Cuando se inicializa una cadena podría dejarse los corchetes vacíos y así el compilador le asignará el índice requerido automáticamente pero si NO es así, se debe tener en cuenta que el último carácter de la cadena también ocupará un puesto. Este es el carácter nulo \0. Así que nuestra declaración contiene 10 elementos aunque sólo asignamos 9 ( y no se le puede asignar más ya que no dejaríamos lugar al ya mencionado \0 ). O sea que la sentencia anterior es lo mismo que:
8 8 char array1[]={'9','8','7','6','5','4','3','2','1','\0'}; Algunas funciones de interés. Algunos problemas requieren que los caracteres de la cadena sean procesados individualmente. No obstante, hay muchos otros problemas en los que se requiere que las cadenas se procesen como entidades completas. Tales problemas pueden simplificarse considerablemente usando funciones especiales orientadas a cadenas. Entre las funciones incluidas en stdio.h tenemos: gets(): Su forma general es: gets(cadena_de_caracteres) y lo que hace es tomar de teclado un texto ( hasta que se pulse enter ) y guardarlo en cadena_de_caracteres. OJO: Como ya se dijo antes, C no comprueba los límites de los arreglos así que se puede sobrepasar cualquier extremo de un arreglo y escribir en alguna otra variable de datos o incluso mucho peor en el código del programa. El programador tiene que proporcionar una comprobación de límites cuando sea necesario. Por ejemplo, asegúrese de que los arreglos de caracteres que aceptan entradas de caracteres usando el anteriormente mencionado gets() sean suficientemente largos como para aceptar la mayor entrada posible. puts(): Su forma general es: puts(cadena_de_caracteres) y lo que hace escribir en pantalla el contenido de cadena_de_caracteres terminando con un salto de línea. También se puede usar la función printf() especificando que el tipo a imprimir es %s. P. ej.: printf( La cadena contiene: %s\n,nombre_cadena);
9 9 Las funciones especificadas a continuación para el tratamiento de cadenas de caracteres se encuentran en el fichero de cabecera string.h: strcmp(): Su forma general es: strcmp(cadena1,cadena2) y lo que hace es comparar alfabéticamente dos cadenas. Devuelve: a.- un valor negativo si cadena1 precede alfabéticamente a cadena2. b.- el valor 0 si las dos cadenas son idénticas. c.- un valor positivo si cadena2 precede alfabéticamente a cadena1. Vea que esta función devuelve FALSO cuando las cadenas son iguales por lo que si está probando la igualdad, asegúrese de usar el operador lógico! Para invertir la condición. Véase el ejemplo al final de este punto. strcpy(): Su forma general es: strcpy(cadena1, cadena2) y lo que hace es copiar el valor de cadena2 en cadena1 y devuelve cadena1. strlen(): Su forma general es: strlen(cadena) y retorna el número de caracteres de la cadena. strcat(): Su forma general es: strcat(cadena1, cadena2)
10 10 y lo que hace es concatenar la cadena apuntada por cadena2 a la cadena apuntada por cadena1 la cual contendrá la versión final de la cadena. También devuelve cadena1. Véase que hace algo como: cadena1+cadena2. A continuación veamos un ejemplo: #include<stdio.h> #include<string.h> main() { } char c1[80], c2[80]; gets(c1); gets(c2); printf( longitudes: %i %i\n, strlen(c1), strlen(c2)); if (!strcmp(c1, c2) ) printf( Son iguales\n ); strcat(c1, c2); printf( %s\n, c1); return 0; Si se ejecuta este programa e introducimos las cadenas TEST y TEST, por ejemplo, la salida será: longitudes: 5 5 // Espero que sepan porqué. Son iguales TESTTEST
Tema 7 Vectores y cadenas de caracteres. Fundamentos de Informática
Tema 7 Fundamentos de Informática Índice 1. Qué es un vector? 2. Vectores unidimensionales 3. Cadenas de caracteres 4. Paso de vectores unidimensionales a funciones. 5. Vectores multidimensionales: matrices
Más detallesLENGUAJE. Tema 4 Vectores, Matrices y Cadenas de caracteres.
LENGUAJE Tema 4 Vectores, Matrices y Cadenas de caracteres. VECTORES UNIDIMENSIONALES Los vectores (array o arreglo) unidimensionales son secuencias de valores del mismo tipo que se almacenan en localidades
Más detallesInstituto Tecnológico de Celaya
CADENAS DE CARACTERES Hasta ahora se han manejado variables de tipo caracter cuyo valor es un sólo caracter. En algunos casos, sin embargo, es necesario usar variables cuyos valores sean un conjunto (cadena)
Más detallesArrays y Cadenas en C
Arrays y Cadenas en C Los arrays son variables estructuradas, donde cada elemento se almacena de forma consecutiva en memoria. Las cadenas de caracteres son declaradas en C como arrays de caracteres y
Más detallesAlgoritmos y Programación I
Algoritmos y Programación I ARREGLOS Y ESTRUCTURAS EN C Arreglos Un arreglo o vector es un conjunto de datos del mismo tipo, almacenados de forma contigua (es decir uno al lado del otro) en memoria principal.
Más detallesTema 8 Vectores y Matrices
Tema 8 Vectores y Matrices Contenidos 1. Vectores. 1.1. Declaración. 1.2. Inicialización. 1.3. Acceso a elementos. 1.4. Operaciones. 2. Cadenas de caracteres (vectores de caracteres). 2.1. Declaración,
Más detallesINTRODUCCIÓN AL TIPO COMPUESTO CADENA CONTENIDOS
CONTENIDOS 1. Introducción a las cadenas 2. Definición 3. Declaración de cadenas 4. Inicialización de cadenas 5. Escritura y Lectura de datos tipo cadena 6. Funciones de manipulación de cadenas 7. Arrays
Más detallesPrincipal material bibliográfico utilizado
Vectores y Punteros Principal material bibliográfico utilizado www.jorgesanchez.net Fundamentos de Programación C/C++ - Ernesto Peñaloza Romero. Lenguaje C Adolfo Beltramo, Nélida Matas. En C el primer
Más detallesTEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 2 CADENAS O VECTORES DE CARACTERES 6 3 PASO DE CADENAS Y ARRAYS A FUNCIONES 8
TEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 1.1 VECTORES O ARRAYS UNIDIMENSIONALES 2 1.2 ARRAYS MULTIDIMENSIONALES 3 1.3 INICIALIZACIÓN DE ARRAYS 4 1.3.1 INICIALIZACIÓN DE ARRAYS SIN
Más detallesInformática II Vectores y Matrices
UTN Facultad Regional Tucumán Informática II Vectores y Matrices Arreglos unidimensionales y multidimensionales en C Prof. Ing. Oscar Gálvez A.T.P. Ing. César Ovejero VECTORES Y MATRICES Arreglos unidimensionales
Más detallesProgramación. Test Autoevaluación Tema 3
Programación Test Autoevaluación Tema 3 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro SOLUCIONES 1.
Más detallesPUNTEROS (APUNTADORES)
2010 UNAN LEON Departamento de Computación Ing. En Sistemas Sabatino Autor: Ing: Karina Esquivel Alvarado. Asignatura: Algoritmo y Estructura de Datos. PUNTEROS (APUNTADORES) TEMA 4: PUNTEROS (APUNTADORES)
Más detallesCAPITULO 4: ENTRADA Y SALIDA DE DATOS.
CAPITULO 4: ENTRADA Y SALIDA DE DATOS. 1. INTRODUCCIÓN. Hemos visto que el lenguaje C va acompañado de una colección de funciones de biblioteca que incluye un cierto número de funciones de entrada/salida.
Más detallesUNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION
CICLO: 02/ 2012 UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION Nombre de la Practica: Lugar de Ejecución: Tiempo Estimado: MATERIA: GUIA DE LABORATORIO #07 Arreglos. Uso
Más detallesTema 13: Apuntadores en C
Tema 13: Apuntadores en C M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A. Franco) 1 Contenido Introducción
Más detallesTipos de Datos Estructurados
- Unidad 3 Tipos de Datos Estructurados 1 Tipos de Datos Compuestos en C 2 Arreglos (1) Un arreglo (array) una colección homogénea de datos simples ó compuestos, que se referencian con un nombre comú,
Más detallesPROGRAMACION / Clave: 11214
PRACTICA 10. Programas en DevC++ 1.- Programa que imprima las tablas de multiplicar del 1 al 10, se deberá hacer una pausa entre tabla y tabla de multiplicar. 2.- Programa que se repita N cantidad de veces
Más detallesPara crear un arreglo de cualquier tipo de elementos la sintaxis es:
Arreglos (arrays) Un arreglo es una estructura de datos homogénea o conjunto de elementos del mismo tipo. En Java se pueden manejar arreglos de elementos de tipo primitivo (8 tipos primitivos hay en Java)
Más detallesTUTORIAL PSEINT. Ing. Ronald Rentería Ayquipa. Fundamentos de Programación
TUTORIAL PSEINT Ing. Ronald Rentería Ayquipa Fundamentos de Programación PSEINT Página Oficial: http://pseint.sourceforge.net/ Es un software que interpreta pseudocódigo. Permite la generación de diagramas
Más detallesFunciones Definición de función
Funciones Definición de función Una función es un bloque de código que realiza una tarea específica. Una función es una porción de programa, identificable mediante un nombre, que realiza determinadas tareas
Más detallesLaboratorio de Arquitectura de Redes. Punteros en lenguaje C
Laboratorio de Arquitectura de Redes Punteros en lenguaje C Punteros en lenguaje C Definición Declaración e inicialización de punteros Operadores de punteros: «*» y «&» Operaciones con punteros Operaciones
Más detallesFormato para prácticas de laboratorio
PROGRAMA EDUCATIVO PLAN DE ESTUDIO CLAVE DE UNIDAD DE APRENDIZAJE NOMBRE DE LA UNIDAD DE APRENDIZAJE TRONCO COMÚN 2009-2 11214 PROGRAMACIÓN PRÁCTICA No. LABORATORIO DE CIENCIAS BÁSICAS (PROGRAMACIÓN) DURACIÓN
Más detallesPráctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros
Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros
Más detallesTipos de Datos Estructurados
Departamento de Informática Universidad Técnica Federico Santa María Tipos de Datos Estructurados Programación de Computadores IWI-131-p1 Prof.: Teddy Alfaro Olave Arreglos (array) El arreglo es un tipo
Más detallesProgramación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C
Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales
Más detallesInformática Ingeniería en Electrónica y Automática Industrial
Informática Ingeniería en Electrónica y Automática Industrial Entrada y salida estándar V1.3 Autores Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato:
Más detallesTema 9. Vectores y Matrices
Tema 9. Vectores y Matrices OBJETIVO En temas anteriores hemos declarado variables simples de tipo int, float, o de cualquier otro tipo simple. A menudo necesitaremos declarar una colección de variables,
Más detallesAnalista Universitario en Sistemas. Taller de Programación II. Instituto Politécnico Superior STRINGS
STRINGS 1 Strings (Cadena de caracteres) En C no existe un tipo de dato y operadores para el tratamiento de cadenas de caracteres de manera atómica Un string es una cadena de cero o más caracteres finalizados
Más detallesLenguaje C. República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III
República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III Lenguaje C 1 Puntos previos Los códigos fuentes generados en C requieren ser compilados
Más detallesTipos de Arreglos. Notación Algoritmica de los Arreglos multidimensionales tipo_dato nombre[dim 1. , dim 2. ,..., dim n
Matrices Material Original: Prof. Flor Narciso Modificaciones: Prof. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Tipos de
Más detallesCurso de Programación en C. Licenciatura, FCQeI. APUNTADORES.
APUNTADORES. La memoria de una máquina esta ordenada en forma de celdas numeradas consecutivamente y que se pueden manipular individualmente o en grupos contiguos. La siguiente figura muestra una representación
Más detallesCadena de caracteres. 1. Fundamentos de cadenas y caracteres
1. Fundamentos de cadenas y caracteres Cadena de caracteres Los caracteres son bloques de construcción fundamentales para los programas fuente. Un programa puede contener constantes de carácter. Una constante
Más detallesProgramación I. Arreglos. Prof. Lisbeth Pérez Rivas
Programación I Arreglos Prof. Lisbeth Pérez Rivas lisbethpe@ula.ve Arreglos Secuencia de datos del mismo tipo que pueden ser de cualquier tipo de dato ( entero, real, carácter, entre otros). Cada valor
Más detallesProgramación Orientada a Objetos en C++
Unidad I Programación Orientada a Objetos en C++ Programación Orientada a Objetos en C++ Programación I - 0416202 Contenido Esta lección abarca los siguientes temas: Estructura y declaración de una clase
Más detallesCadenas y Caracteres. Universidad Católica de Honduras Nuestra Señora Reina de la Paz. Asignatura. Programación Científica. Tema de Exposición
Universidad Católica de Honduras Nuestra Señora Reina de la Paz Asignatura Programación Científica Tema de Exposición Caracteres y Cadenas Catedrático: Ing. Henry Pinto Tegucigalpa, M. D. C. del 2008 01
Más detallesLaboratorio de Arquitectura de Redes. Entrada y salida estándar
Laboratorio de Arquitectura de Redes Entrada y salida estándar Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato: scanf() El buffer de teclado Entrada
Más detallesApunte Laboratorio ALPI - El lenguaje de programación Pascal
Apunte Laboratorio ALPI - El lenguaje de programación Pascal 1 2 ÍNDICE GENERAL Índice 1. Estructura de un Programa en Pascal 3 2. Sintaxis de Pascal 4 2.1. Uso de mayúsculas.....................................
Más detallesTema 6: Clases. Índice
Tema 6: Clases Antonio J. Sierra Índice 1. Fundamentos. 2. Declaración de objetos. 3. Asignación de objetos a variables referencia. 4. Métodos. 5. Constructores. 6. this. 7. Recogida de basura. 8. Modelado
Más detalles1.1 Tipos de Datos Primitivos. 1.2 Tipos de datos estructurados. 1.3 Definición de estructura de datos
1.1 Tipos de Datos Primitivos 1.2 Tipos de datos estructurados 1.2.1 Arreglos unidimensionales, bidimensionales y cadenas de caracteres 1.2.2 Registros o Estructuras (unión y estructura) 1.3 Definición
Más detallesPunteros. Programación en C 1
Punteros Programación en C 1 Índice Variables y direcciones de memoria. Punteros definición, declaración e inicialización. Punteros declaración, asignación y dereferencia. Puntero nulo, tipo void. Aritmética
Más detallesIntroducción al tipo de dato ARRAY
CONTENIDOS. Introducción al tipo de dato ARRAY. Definición, Características, Declaración, Acceso e Inicialización.. Arrays multidimensionales Definición, Declaración, Acceso e Inicialización. Introducción
Más detallesDefinición de estructuras. Estructuras, uniones y enumeraciones. Declaración. Definición y declaración. (struct, union y enum)
Estructuras, uniones y enumeraciones (struct, union y enum) Definición de estructuras Una Estructura es una colección de variables simples (como int x; char cad[30]; etc), que pueden contener diferentes
Más detallesEsquema de un programa en C: bloques básicos
Esquema de un programa en C: bloques básicos // Incluimos los ficheros de cabecera que necesitemos. // Esto es un comentario #include #include // Si queremos definir alguna constante,
Más detallesFUNDAMENTOS DE INFORMÁTICA 1º Ingeniería Industrial
FUNDAMENTOS DE INFORMÁTICA º PRÁCTICA 4: Funciones y vectores CURSO 5/6 Área de Ingeniería de Sistemas y Automática ISA-UMH R-2-FI4v. FUNDAMENTOS DE INFORMÁTICA PRÁCTICA 4: Funciones y vectores curso 25-26
Más detallesTema 5. Entrada y Salida
Tema 5 Entrada y Salida Contenidos 1. Conceptos Previos de Entrada y Salida de Datos. 2. Funciones de Salida de Datos. putchar puts printf 3. Funciones de Entrada de Datos. getchar gets scanf 4. Ficheros
Más detallesTema 14: Arreglos estáticos en C
Tema 14: Arreglos estáticos en C Solicitado: Ejercicios 05: Ejercicios con arreglos estáticos unidimensionales M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom
Más detallesPunteros. 1.- Paso de parámetros por referencia. Ya hablamos de ésto en funciones. 2.- Declaración de arreglos dinámicos.
1 Punteros. Dentro de la memoria de la computadora cada dato almacenado ocupa una o más celdas contiguas de memoria. El número de celdas de memoria requeridas para almacenar un dato depende de su tipo.
Más detallesTEMA 02 TIPOS, OPERADORES Y EXPRESIONES
TEMA 02 TIPOS, OPERADORES Y EXPRESIONES 2.1.- Introducción. 2.2.- Datos. 2.3.- Entrada y salida básica. 2.4.- Modificadores. 2.5.- Cadenas de caracteres. 2.6.- Operadores. 2.7.- Precedencia de operadores.
Más detallesIntroducción a los Computadores
Introducción a los Computadores Práctica nº 4 Introducción. Un tipo de datos estructurado es un tipo de datos formado por una colección organizada de componentes de algún otro tipo de datos. Podremos hacer
Más detallesfunciones printf scanf
FUNCIONES EN C FUNCIONES Los módulos en C se llaman funciones. Hemos estado utilizando funciones de la biblioteca estandar stdio.h como por ejemplo printf y scanf. Comenzaremos viendo algunas funciones
Más detallesMemoria Dinámica. Jornadas de Marzo 2010 Grupo de Usuarios de Linux Tania Pérez
Jornadas de Marzo 2010 Grupo de Usuarios de Linux Tania Pérez 1. PUNTEROS 2. MEMORIA DINÁMICA 2 1. PUNTEROS 3 Qué es un puntero? Un tipo de variable cuyo valor es la dirección de memoria de otra variable.
Más detallesIntroducción a Lenguaje C. Jornadas de Octubre 2009 Grupo de Usuarios de Linux Universidad Carlos III Tania Pérez
Jornadas de Octubre 2009 Grupo de Usuarios de Linux Universidad Carlos III Tania Pérez El lenguaje C es: Estructurado Portable. Flexible, veloz y potente. Fácil modificación. Compilado. 2 Algunas características
Más detallesCaracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación
1 Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera Fundamentos de programación Agenda Caracteres y Cadenas Conversión de Datos Introducción a las funciones y procedimientos
Más detallesProgramación Estructurada
Programación Estructurada PROGRAMACIÓN ESTRUCTURADA 1 Sesión No. 7 Nombre: Estructuras de datos Contextualización Cuando un programa suele ser muy extenso, un problema clásico de los programadores es la
Más detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 1: Punteros Objetivos Se hará hincapié en la aritmética de punteros
Más detallesUNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO.
UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. TRUJILLO 1.- Resumen de Prog1 Comentarios es C++ Declaraciones de variables.
Más detallesPROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I
PROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I Contenido INFORMACIÓN GENERAL... 2 INTRODUCCIÓN... 2 OBJETIVOS GENERALES DE LA ASIGNATURA... 2 OBJETIVOS, TEMAS Y SUBTEMAS... 3 Tema1: Estructura de control....
Más detallesPROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I
PROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I Table of contents 1 INFORMACIÓN GENERAL...2 2 INTRODUCCIÓN... 2 3 OBJETIVOS GENERALES DE LA ASIGNATURA... 3 4 OBJETIVOS, TEMAS Y SUBTEMAS... 3 5 PLAN TEMÁTICO...6
Más detallesPHP: Lenguaje de programación
Francisco J. Martín Mateos Carmen Graciani Diaz Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Tipos de datos Enteros Con base decimal: 45, -43 Con base octal: 043, -054
Más detallesProgramación I Teoría II.
Programación I Teoría II http://proguno.unsl.edu.ar proguno@unsl.edu.ar MODULARIDAD FUNCIONES EN C Modularidad Principio para resolución de problemas: Dividir para reinar Modularidad Módulo Función Procedimiento
Más detallesPROCESADORES DE LENGUAJES
PROCESADORES DE LENGUAJES Análisis léxico con Prof. Dr. Nicolás Luis Fernández García Departamento de Informática y Análisis Numérico Escuela Politécnica Superior Universidad de Córdoba Universidad de
Más detallesVectores. 27/05/05 Programación Digital I 1
Vectores Material Original: Prof. Flor Narciso Modificaciones: Prof. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Programación
Más detallesFUNCIONES. Identificador valido. Tipo-Funcion Identificador_de_la_funcion (Tipo par1,tipo par2 )
FUNCIONES Las funciones son el medio básico de que se vale C para construir programas. Un Programa es, básicamente, una colección de funciones entre las que se incluye una especial llamada main(), la función
Más detallesTodo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Más detallesSe guardan en archivos con extencion c y los cabezales con extension h
Se guardan en archivos con extencion c y los cabezales con extension h Tipos de Variables: Tipo Tamaño(bytes) Limite inferior Limite superior char 1 -- -- unsigned char 1 0 255 short int 2-32768 +32767
Más detallesProgramación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz
Vectores Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Tipos de Datos: Simples: son las unidades mínimas para almacenar un valor, ejemplo: enteros, caracteres, reales.
Más detallesUnidad II. Fundamentos de programación en Java. Ing. José Luis Llamas Cárdenas
Unidad II Fundamentos de programación en Java Ing. José Luis Llamas Cárdenas En java para poder escribir se emplea el objeto System.out, t pero para leer del teclado es necesario emplear System.in Et Este
Más detallesLEX. Las definiciones y subrutinas son opcionales. El segundo %% es opcional pero el primer %% indica el comienzo de las reglas.
LEX Estructura de un programa en LEX { definiciones { reglas { subrutinas del usuario Las definiciones y subrutinas son opcionales. El segundo es opcional pero el primer indica el comienzo de las reglas.
Más detallesPUNTEROS EN C (APUNTADORES)
2010 UNAN LEON Departamento de Computación Ing. En Sistemas Sabatino Autor: Ing: Karina Esquivel Alvarado. Asignatura: Programación Estructurada PUNTEROS EN C (APUNTADORES) TEMA 10: PUNTEROS (APUNTADORES)
Más detallesCadenas de caracteres
Trabajo práctico Nº 6 (Trabajos con cadenas de caracteres y estructuras) Realiza el programa en Lenguaje C correspondiente. Cadenas de caracteres 1- Construir una función PASSWORD que pida por teclado
Más detallesFUNDAMENTOS DE INFORMÁTICA
FUNDAMENTOS DE INFORMÁTICA Tema 1 Introducción a la Programación en Visual Basic Departamento de Ingeniería de Sistemas y Automática Universidad de Vigo undamentos de Informática. Departamento de Ingeniería
Más detallesProf. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 5 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante Practica Nº5 Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1. Introducción... 1 1.1 Ejercicio 1: Trabajando
Más detallesAnálisis semántico. Análisis semántico. Índice (I)
Análisis semántico Índice (I) Marina de la Cruz Alfonso Ortega Objetivo del análisis semántico Decisiones para la construcción de un analizador semántico Análisis semántico con Bison Nivel de indirección
Más detallesTEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS
TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS Una vez que ya sabes crear tus propios programas, vamos a analizar los fundamentos del lenguaje de programación C. Este capítulo incluye además los siguientes temas:
Más detallesProf. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 2 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante Practica Nº 2 Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1. Introducción... 1 1.1 Ejercicio 1: Reserva
Más detallesJavaScript Básico. Elementos Básicos: Comentarios: Literales: Valores que puede tomar una variable o una constante.
Javascript (II) 1 Elementos Básicos: Comentarios: Para una línea // Esto es un Comentario Para un bloque /*......... */ Literales: Valores que puede tomar una variable o una constante. Ejemplos: "Soy una
Más detallesIntroducción al lenguaje C
Introducción al lenguaje C Ampliación de Informática Belarmino Pulido Junquera Índice 1. Presentación del lenguaje C 2. Estructura de un programa en C 3. Tipos de datos escalares 4. Operadores básicos
Más detallesCAPÍTULO 3 ESTRUCTURAS DE DATOS ESTÁTICAS
CAPÍTULO 3 ESTRUCTURAS DE DATOS ESTÁTICAS Capítulo 3 Estructuras de datos estáticas 1/37 1. INTRODUCCIÓN Las estructuras de datos se utilizan, generalmente, para procesar una colección de valores que están
Más detallesTema: Repaso sobre uso de Funciones, Arreglos y Punteros en C++.
Programación II. Guía No. 1 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Repaso sobre uso de Funciones, Arreglos y Punteros en C++. Objetivos. Utilizar la sintaxis de las
Más detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 2: Memoria dinámica y Bibliotecas Objetivos Practicar conceptos
Más detallesLenguaje de Programación: C++ ARCHIVOS I/O
UG C++ Lenguaje de Programación: C++ ARCHIVOS I/O Universidad de Guanajuato Octubre 2010 Como abrir un archivo Antes de poder escribir datos en un archivo, debemos abrirlo, esto significa que debemos decirle
Más detallesEl lenguaje C. 1. Estructuras. Principios de Programación. 1.1. Definicion de estructuras
Principios de Programación El lenguaje C 1. Estructuras Las estructuras son colecciones de variables relacionadas bajo un nombre. Las estructuras pueden contener variables de muchos tipos diferentes de
Más detalles1. Funcionamiento de lex
El generador de analizadores léxicos lex. Teoría de Autómatas y lenguajes formales Federico Simmross Wattenberg (fedesim@infor.uva.es) Universidad de Valladolid Una vez visto cómo las expresiones regulares
Más detalles7.3. Estructura de un programa
TEMA 7 ALGORITMOS Y PROGRAMAS. ESTRUCTURA DE UN PROGRAMA 7.1. Algoritmos 7.2. Compilación 7.3. Estructura de un programa 7.1. Algoritmos Objetivo: Resolver problemas mediante computadoras (usando el lenguaje
Más detallesIntroducción a Python. Cecilia Manzino
Características del lenguaje Es un lenguaje de programación multiparadigma, soporta la programación orientada a objetos, imperativa y, en menor medida, funcional. Es un lenguaje multiplataforma, puede
Más detallesQué son los arreglos
Programación Orientada a Objetos Arreglos Java Ing. Julio Ernesto Carreño Vargas MsC. Qué son los arreglos Estructuras de datos Contiene elementos relacionados del mismo tipo Mantiene el mismo tamaño una
Más detallesEjercicio 1. Ejercicio 2
Todos los ejercicios incluyen una parte opcional de mayor dificultad, indicada con una serie de asteriscos en función del grado de dificultad. Ejercicio 1 Este ejercicio servirá para practicar la declaración
Más detallesESTRUCTURA DE DATOS. Memoria estática Memoria dinámica Tipo puntero Declaración de punteros Gestión de memoria dinámica Resumen ejemplo
ESTRUCTURA DE DATOS Memoria estática Memoria dinámica Tipo puntero Declaración de punteros Gestión de memoria dinámica Resumen ejemplo DATOS ESTÁTICOS Su tamaño y forma es constante durante la ejecución
Más detalles1. Manejo de memoria estática 2. Manejo de memoria dinámica
1. Manejo de memoria estática 2. Manejo de memoria dinámica *La administración de memoria de una computadora es una tarea fundamental debido a que la cantidad de memoria es limitada. *El sistema operativo
Más detallesApuntadores (Punteros)
Apuntadores (Punteros) x9ff10 X int 209 SESION 7 *ptr Definición Llamados también punteros. Un Apuntador es una variable que contiene una dirección de memoria, la cual corresponderá a un dato o a una variable
Más detallesEscuela Politécnica Superior de Elche
EXAMEN DE SISTEMAS INFORMÁTICOS INDUSTRIALES ((SOLUCIÓN) (TEORÍA)jUJ jhshshs SEPTIEMBRE 2015 1. Indicar si las siguientes afirmaciones son verdaderas o falsas: (a) En C++, una clase derivada puede acceder
Más detallesREPRESENTACIÓN DE DATOS
REPRESENTACIÓN DE DATOS Tipos de datos primitivos Tipos de Datos Estructurados TIPOS DE DATOS SIMPLES O PRIMITIVOS Dato Longitud Rango 2 TIPOS DE DATOS SIMPLES O PRIMITIVOS Surgen de la necesidad de tener
Más detallesEn Java, un arreglo es un grupo de variables (llamados elementos o componentes) que contienen valores, todos del mismo tipo.
Arreglos Los arreglos son estructuras de datos que consisten de elementos de datos relacionados, del mismo tipo. Los arreglos son entidades son entidades de longitud fija: conservan la misma longitud una
Más detallesObjetivos de la sesión. Aplicación de consola 7/30/11. Código con que se inicia un programa en Visual C# (aplicación de consola)
Objetivos de la sesión Entender el tipo de programas que se pueden realizar con aplicaciones de consola. Conocer el concepto de variable, la forma en que se declaran y su utilización. Conocer la forma
Más detallesObjetos y memoria dinámica
Objetos memoria dinámica 1. Punteros a objetos 2. Vectores dinámicos de objetos 3. Uso de objetos dinámicos 4. Atributos dinámicos 5. Creación de objetos con atributos dinámicos 6. Destrucción de objetos
Más detallesProgramación en Lenguaje C
Lenguaje de programación C Programación en Lenguaje C Introducción El Lenguaje de programación C fue implantado por primera vez en los años 70 por Dennis Ritchie para una computadora DEC PDP-11 corriendo
Más detallesTEMA 7: Ficheros. TEMA 7: Ficheros. 7.1.-Concepto de fichero
TEMA 7: Ficheros 7.1.-Concepto de fichero Todas las estructuras de datos que hemos visto hasta ahora utilizan memoria principal. Esto tiene dos limitaciones importantes: 1. Los datos desaparecen cuando
Más detallesAnalista Universitario en Sistemas. Taller de Programación II. Instituto Politécnico Superior PUNTEROS
PUNTEROS 1 Punteros en C Un puntero es una variable que almacena direcciones de memoria tipo *puntero; tipo variable; puntero = &variable; ffd0 valor variable fff0 ffd0 puntero A partir de la última sentencia
Más detallesDEFINICIONES BÁSICAS DE LAS ESTRUCTURAS DE DATOS
DEFINICIONES BÁSICAS DE LAS ESTRUCTURAS DE DATOS En programación, una estructura de datos es una forma de organizar un conjunto de datos elementales con el objetivo de facilitar su manipulación Un dato
Más detallesEXAMEN PARCIAL TRABAJO INTEGRADOR (TI) EVALUACIÓN CONTINUA PESO PORCENTUAL PESO PORCENTUAL 1 30% 06-MAY-14 30% 03-MAY-14 20% 20%
UNIVERSIDAD DEL VALLE DE MEXICO CAMPUS ROMA PLANEACIÓN DIDÁCTICA LICENCIATURA EJECUTIVA CICLO 201425 Nombre de la asignatura: Lenguajes Operativos Horas por semana: 6 Nombre del docente: Olvera Jiménez
Más detalles