Tema 9. Vectores y Matrices

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Tema 9. Vectores y Matrices"

Transcripción

1 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, tales como 20 enteros. En este tema veremos cómo podemos declarar arrays vectores y matrices, que reciben el nombre genérico de arrays. Por otro lado, C no tiene datos predefinidos tipo cadena. En su lugar, C manipula cadenas de caracteres mediante arrays de caracteres que terminan con el carácter nulo ASCII ('\0'). Una cadena se considera como un vector de tipo char o unsigned char. Bibliografía Joyanes Aguilar, J. Programación en C++. Algoritmos, estructuras de datos y Objetos. Capítulos 7 y 9. Ed. McGraw-Hill. Pont, M.J. Software Engineering with C++ and CASE Tools. Capítulo 7. Pointers and arrays. Ed. Addison-Wesley. CONTENIDOS 1. Qué es un Array? Elementos de un Array Declaración de arrays Asignación de valores fuera del array Inicialización de un array 6 2. Matrices (arrays multidimensionales) Inicialización de arrays multidimensionales 7 3. Cadena de caracteres Lectura de cadenas Manejo de cadenas Qué es un Array? Un array es una colección de posiciones de almacenamiento de datos, todos ellas con el mismo tipo de dato. Cada posición de almacenamiento se denomina elemento del array. Denominaremos vector a un array unidimensional, y matriz a un array multidimensional. Para declarar un vector escribimos el tipo de dato, seguido del nombre del vector y del subíndice. El subíndice es el número de elementos del vector, encerrado entre corchetes. Por ejemplo, long vectorlargo[25]; declara un vector de 25 enteros largos, llamado vectorlargo. Cuando el compilador encuentra esta declaración reserva la memoria necesaria para los 25 elementos. Puesto que cada entero necesita 4 bytes, esta declaración reserva 100 bytes contiguos de memoria, como se ilustra en la figura 9.1.

2 Vectores y Matrices 2 Figure 9.1. Declaración de un vector Elementos de un vector Para acceder a los elementos del vector debemos tomar como base el nombre del vector. Los elementos del vector de cuentan a partir de cero, por tanto el primer elemento es NombreVector[0]. En el ejemplo anterior, VectorLargo[0] es el primer elemento del vector VectorLargo, VectorLargo[1] el segundo y así sucesivamente. Esto puede resultar confuso. El vector Vector[3] tiene tres elementos: Vector[0], Vector[1] y Vector[2]. En general, Vector[n] tiene n elementos, que van desde el Vector[0] hasta el Vector[n- 1]. Por lo tanto, VectorLargo[25] se numera desde VectorLargo[0] hasta VectorLargo[25]. El listado 9.1 muestra cómo declarar un vector de 5 enteros e inicializarlos con un valor. Programa 9.1: Uso de un vector entero 1: // Listado 9.1: Vectors 2: #include <stdio.h> 3: 4: int main() 5: { 6: int Vector1[5]; 7: int i; 8: for ( i=0; i<5; i++) // 0-4 9: { 10: printf("valor para Vector1[%d]: ", i); 11: scanf("%d", &Vector1[i]); 12: } 13: for (i = 0; i<5; i++) 14: printf("%d: %d\n", i, Vector1[i]); 15: return 0; 16: } Salida Valor para Vector1[0]: 1 Valor para Vector1[1]: 2 Valor para Vector1[2]: 3 Valor para Vector1[3]: 4 Valor para Vector1[4]: 5 0: 1 1: 2

3 Vectores y Matrices 3 2: 3 3: 4 4: 5 Análisis: La línea 6 declara un vector llamado Vector1, que contiene cinco variables enteras. La línea 8 establece un bucle que cuenta de 0 a 4, que es el adecuado conjunto de desplazamientos para un vector de cinco elementos. Los sucesivos valores introducidos por el usuario son asignados a los correspondientes elementos del vector. El segundo bucle imprime cada uno de los valores del vector en la pantalla. NOTA: los vectores cuentan desde 0, no desde 1. Este es el origen de muchos errores en programas C escritos por principiantes. Siempre que utilices un vector, recuerda que un vector con 10 elementos cuenta desde NombreVector[0] hasta NombreVector[9]. NombreVector[10] no se usa Declaración de vectores Un vector puede tener cualquier nombre que cumpla los requisitos para ser nombre o identificador de una variable, pero no puede tener el mismo nombre que otra variable o vector del mismo ámbito. Por lo tanto, no podemos tener un vector llamado Tabla[5] y una variable llamada Tabla al mismo tiempo. Podemos dimensionar el tamaño de un vector con una constante o con una enumeración. El listado 9.2 ilustra este hecho. Programa 9.2: Uso de constantes y enumeraciones en arrays 1: // Listado 9.2 2: // Dimensionado de vectores con constantes y enumeraciones 3: 4: #include <stdio.h> 5: int main() 6: { 7: enum DiasSemana { Lunes, Martes, Miercoles, Jueves, 8: Viernes, Sabado, Domingo, DiasEnSemana }; 9: int ArraySemana[DiasEnSemana] = { 10, 20, 30, 40, 50, 60, 70 }; 10: 11: printf("el valor en viernes es: %d", ArraySemana[Viernes]); 12: return 0; 13: } Salida El valor en viernes es: 50 Análisis: La línea 7 crea una enumeración llamada DiasSemana que tiene ocho miembros. Lunes es igual a cero, y DiasEnSemana es igual a 7.

4 Vectores y Matrices 4 La línea 11 usa la constante enumerada viernes como índice del vector. Puesto que viernes vale 4, el quinto elemento del vector, ArraySemana[4] se imprime en pantalla Asignación de valores fuera del vector Cuando asignamos un valor a un elemento de un vector, el compilador calcula la posición de memoria donde tiene que almacenar dicho valor a partir del subíndice. Supongamos que queremos asignar un valor a ArrayLargo[5], que es el sexto elemento del vector. El compilador multiplica el subíndice (5) por el tamaño del dato (int = 4 bytes). Después se desplaza desde el principio del vector tantos bytes como indique el resultado de la multiplicación anterior (20), y escribe el nuevo valor en esa posición. Si tenemos suerte, el programa fallará inmediatamente. Si queremos asignar un valor a ArrayLargo[50], el compilador ignora el hecho de que dicho elemento no existe. Solamente calcula el desplazamiento a realizar desde el primer elemento (200 bytes) y escribe el valor en dicha posición. Esta posición puede estar reservada para otra variable, y escribir un valor en dicha posición puede tener resultados imprevistos. Si no es así, es posible que el programa falle más adelante, y será difícil determinar el por qué ha fallado. El compilador actúa como un ciego que cuenta por pasos la distancia desde una casa. Comienza en la primera casa, PaseoZorrilla[0]. Cuando le pedimos que vaya a la sexta casa del Paseo Zorrilla, él se dice: Debo ir cinco casas más allá. Cada casa mide cuatro pasos largos. Por tanto, debo andar 20 pasos. Si le pedimos que vaya a PaseoZorrilla[100] y el Paseo Zorrilla solo tiene 75 casas, él contará 400 pasos, y con mucha probabilidad, se pare delante de un autobús! El listado 9.3 muestra lo que sucede cuando escribimos valores más allá del final del vector. PRECAUCIÓN: No ejecutes este programa, puede bloquear tu ordenador! Programa 9.3: Cuidado con el final de un vector 1: /* Listado 7.7 2: Ejemplo de lo que ocurre cuando escribimos mas alla 3: del final de un array */ 4: 5: #include <stdio.h> 6: int main() 7: { 8: short calleuno[3]; 9: short paseozorrilla[20]; // array a rellenar 10: short calledos[3]; 11: int i; 12: for (i=0; i<3; i++) 13: { 14: calleuno[i] = -1; calledos[i] = -2; 15: } 16: 17: for (i=0; i<=25; i++) 18: paseozorrilla[i] = i; 19: 20: printf("test 1: \n"); 21: printf("paseozorrilla[0] : %d \n", paseozorrilla[0]); 22: printf("paseozorrilla[20]: %d \n", paseozorrilla[20]); 23: 24: printf("\nasignando..."); 25: paseozorrilla[21] = 21;

5 Vectores y Matrices 5 26: 27: printf("\ntest 2: \n"); 28: printf("paseozorrilla[0] : %d\n", paseozorrilla[0] ); 29: printf("paseozorrilla[20]: %d\n", paseozorrilla[20]); 30: printf("paseozorrilla[21]: %d\n", paseozorrilla[21]); 31: for (i = 0; i<3; i++) 32: printf("calleuno[%d]: %d\n", i, calleuno[i]); 33: 34: for (i = 0; i<3; i++) 35: printf("calledos[%d]: %d\n", i, calledos[i]); 36: 37: return 0; 38: } Salida del programa Test 1: paseozorrilla[0] : 0 paseozorrilla[20]: 20 Asignando... Test 2: paseozorrilla[0] : 0 paseozorrilla[20]: 20 paseozorrilla[21]: 21 calleuno[0]: 20 calleuno[1]: 21 calleuno[2]: -1 calledos[0]: -2 calledos[1]: -2 calledos[2]: -2 Análisis: Primero se declaran dos vectores de tres enteros que actúan como centinelas alrededor de paseozorrilla. Estos vectores centinelas se inicializan con los valores -1 y -2. Si escribimos algo en la memoria después del final de paseozorrilla, alguno de los centinelas cambiará probablemente de valor. Algunos ordenadores asignan memoria de arriba abajo (de direcciones altas a direcciones bajas) mientras que otros lo hacen de abajo hacia arriba (de direcciones bajas a direcciones altas). Por esta razón, hemos colocado centinelas a ambos lados de paseozorrilla. Después se asignan valores a los miembros de paseozorrilla, pero el contador cuenta hasta los subíndices 20 y 21, que no existen en paseozorrilla. Podemos observar que al imprimir paseozorrilla[20] se escribe sin ningún problema el valor 20. Sin embargo, cuando se imprimen calleuno y calledos, observamos que calleuno[0] ha cambiado. Esto se debe que la zona de memoria de paseozorrilla[20] coincide con la zona de memoria de calleuno[0].

6 Vectores y Matrices Inicialización de un vector Se puede inicializar una vector de tipos estándar, como enteros o caracteres, cuando se declara por primera vez. Después del nombre del vector se coloca el operador de asignación (=), seguido de una lista de valores separados por comas y encerrados entre llaves. Por ejemplo, la sentencia int vectorenteros[5] = { 10, 20, 30, 40, 50 }; declara vectorenteros como un vector de cinco elementos, y asigna a vectorenteros[0] el valor 10, a ArrayEnteros[1] el valor 20, y así sucesivamente. Si se omite el tamaño del vector, se creará un vector lo suficientemente grande para contener todos los valores listados en la inicialización. Por tanto, la sentencia int vectorenteros[] = { 10, 20, 30, 40, 50 }; creará el mismo vector que se creaba en la sentencia previa. Si necesitamos conocer el tamaño de un vector, podemos decirle al compilador que lo calcule. Por ejemplo, unsigned short LongitudVectorEnteros; LongitudVectorEnteros = sizeof(vectorenteros)/sizeof(vectorenteros[0]); asigna a la variable LongitudVectorEnteros el resultado de dividir el tamaño del vector completo por el tamaño de un elemento del vector. Este cociente es el número de miembros del vector. No podemos inicializar más elementos de los que hemos declarado para el vector. Por tanto, int vectorenteros[5] = { 10, 20, 30, 40, 50, 60}; genera un error porque hemos declarado un vector de cinco miembros y hemos inicializado seis valores. Sin embargo si que es válido escribir int vectorenteros[5] = { 10, 20}; Los valores no inicializados son automáticamente inicializados a cero. 2. Matrices (arrays multidimensionales) Es posible manejar arrays de más de una dimensión, denominados en general matrices. Cada dimensión está representada por un subíndice en la matriz. Por tanto, una matriz bidimensional tiene dos subíndices; una matriz tridimensional tiene tres subíndices; y así sucesivamente. Una matriz puede tener cualquier número de dimensiones, aunque las matrices más utilizadas son las de dos dimensiones. Un buen ejemplo de matriz es un tablero de ajedrez. Una dimensión representa las ocho filas; la otra dimensión representa las ocho columnas. La figura 9.2 ilustra esta idea.

7 Vectores y Matrices 7 Figura 9.2. Un tablero de ajedrez y una matriz. La declaración de una matriz que represente un tablero de ajedrez podría ser: int tablero[8][8]; También podríamos representar los mismos datos con una matriz de 64 elementos. Por ejemplo int tablero[64]; Esto no tiene una correspondencia tan directa con el mundo real como la matriz. Al comienzo de la partida el rey está situado en la cuarta posición de la primera fila. En la matriz esta posición corresponde a tablero[0][3]; suponiendo que el primer subíndice corresponde a la fila y el segundo a la columna. La disposición de las posiciones del tablero completo se muestra en la figura Inicialización de matrices Las matrices también se pueden inicializar. La asignación de la lista de valores a los elementos de la matriz se realiza manteniendo el primer índice fijo mientras el segundo varía. Por tanto, si tenemos una matriz int matriz1[5][3]; los tres primeros elementos irán a matriz1[0], los tres siguientes a matriz1[1], y así sucesivamente. La matriz anterior se puede inicializar de la siguiente manera: int matriz1[5][3] = { 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 }; Para mayor claridad, se pueden agrupar los valores entre llaves. Por ejemplo, int matriz1[5][3] = { {1,2,3}, {4,5,6}, {7,8,9}, {10,11,12}, {13,14,15} }; El compilador ignora las llaves interiores, que hacen más sencillo comprender cómo se distribuyen los valores. Cada valor debe separarse con una coma, independientemente de que se utilicen llaves o no. La inicialización completa si que debe encerrarse entre llaves, y debe finalizar con punto y coma.

8 Vectores y Matrices 8 El listado 9.4 crea una matriz bidimensional. La primera dimensión contiene los números del 0 al 4. La segunda dimensión consta de los valores que duplican los valores de la primera dimensión. Programa 9.4: Creación de una matriz multidimensional 1: #include <stdio.h> 2: int main() 3: { 4: int i,j; 5: int matriz[5][2] = { {0,0}, {1,2}, {2,4}, {3,6}, {4,8}}; 6: 7: for (i = 0; i<5; i++) 8: { 9: for (j=0; j<2; j++) 10: { 11: printf("matriz[%d][%d] = ", i, j); 12: printf("%d \t", matriz[i][j]); 13: } 14: printf("\n"); 15: } 16: 17: return 0; 18: } Salida del programa matriz[0][0] = 0 matriz[0][1] = 0 matriz[1][0] = 1 matriz[1][1] = 2 matriz[2][0] = 2 matriz[2][1] = 4 matriz[3][0] = 3 matriz[3][1] = 6 matriz[4][0] = 4 matriz[4][1] = 8 Análisis: La línea 5 declara matriz como matriz bidimensional. La primera dimensión consta de cinco enteros; la segunda dimensión consta de dos enteros. Esto crea una estructura como la de la figura 9.3. Figura 9.3. Una matriz de 5x2. Los valores se inicializan por parejas. Las líneas 7 y 8 crean un bucle anidado. El bucle externo recorre los elementos de la primera dimensión. Para cada miembro de esta dimensión, el bucle interno recorre cada uno de los miembros de la segunda dimensión. Esto es consistente con la salida. Al elemento matriz[0][0] le sigue el elemento matriz[0][1]. Una vez que el índice de la segunda dimensión ha recorrido todos los elementos de dicha dimensión, el índice de la primera dimensión se incrementa y el índice de la segunda dimensión vuelve a empezar en cero.

9 Vectores y Matrices 9 3. Cadena de caracteres Una cadena es una serie de caracteres. Las únicas cadenas que hemos visto hasta ahora son las cadenas constantes que utilizamos en las sentencias con printf(), tal como printf("hola mundo"; C no tiene datos predefinidos tipo cadena. En su lugar, C manipula cadenas de caracteres mediante vectores de de caracteres que terminan con el carácter nulo ASCII ('\0'). Una cadena se considera como un vector de tipo char o unsigned char. Podemos declarar e inicializar una cadena del mismo modo que cualquier otro vector. El tipo base, naturalmente, es char, o bien, unsigned char. Por ejemplo, char texto[80]; char Saludo[] = { 'H', 'o', 'l', 'a',, ' ', 'M','u','n','d','o', '\0' }; El último carácter, '\0', es el carácter nulo, que muchas funciones C reconocen como terminador de una cadena. Aunque este procedimiento de inicializar un vector carácter-a-carácter es correcto, es difícil de escribir y es una fuente potencial de posibles errores. C nos permite usar una forma simplificada de la línea de código anterior. Esto es char Saludo[] = "Hola Mundo"; Hay dos observaciones importantes sobre esta sintaxis: En lugar de caracteres entre comillas simples separados por comas y encerrados entre llaves, se utiliza una cadena de caracteres encerrada entre dobles comillas, sin comas y sin llaves. No es necesario añadir el carácter nulo porque el compilador lo hace de forma automática. La cadena Hola Mundo tiene 11 bytes: Hola tiene 4 bytes, el espacio 1 byte, Mundo 5 bytes, y el carácter nulo 1 byte. También podemos crear cadenas de caracteres sin inicializar. Al igual que con todos los vectores, es importante asegurar que no vamos a utilizar más espacio del reservado. El listado 9.5 muestra el uso de un vector sin valores iniciales. Programa 9.5. Rellenado de una cadena 1: /* Listado 7.9: rellenado de un vector */ 2: #include <stdio.h> 3: 4: int main() 5: { 6: char buffer[80]; 7: printf("escriba la cadena: "); 8: scanf("%s", buffer); 9: printf("este es el buffer: %s\n", buffer); 10: return 0; 11: }

10 Vectores y Matrices 10 Salida del programa Escriba la cadena: hola mundo Este es el buffer: hola Análisis: En la línea 6 se declara un buffer para 80 caracteres, tamaño suficientemente grande para contener una cadena de 79 caracteres y el carácter nulo para cerrar la cadena. En la línea 7, se pide al usuario que introduzca una cadena, que se almacena en buffer en la línea 8. Este programa presenta dos problemas. Primero, si el usuario teclea más de 79 caracteres, scanf() escribirá más allá del final de buffer. Segundo, si el usuario introduce un espacio, scanf() considera que es el final de la cadena y no escribe más caracteres en buffer. Los caracteres tecleados después del espacio se pierden Lectura de cadenas Para resolver estos problemas, debemos utilizar alguna de las funciones que veremos a continuación. Función gets() La función gets() se utiliza para leer un solo carácter o para leer una cadena de caracteres. El delimitador por defecto es nueva línea. El listado 9.6 ilustra su utilización. Listado 9.6. Rellenado de una cadena con gets() 1: /* Listado 7.10: rellenado de una cadena */ 2: #include <stdio.h> 3: 4: int main() 5: { 6: char buffer[80]; 7: printf("escriba la cadena: "); 8: gets(buffer); 9: printf("este es el buffer: %s\n", buffer); 10: return 0; 11: } Salida del programa Escriba la cadena: Hola Mundo Este es el buffer: Hola Mundo

11 Vectores y Matrices Manejo de cadenas Funciones strcpy() y strncpy() C dispone de una librería de funciones para manejar cadenas: la librería string.h. Entre las muchas funciones disponibles, hay dos para copiar una cadena en otra: strcpy() y strncpy(). strcpy() copia el contenido completo de una cadena en el buffer indicado. El listado 9.7 muestra el uso de strcpy(). Programa 9.7: Ejemplo de uso de strcpy() #include <stdio.h> #include <string.h> int main() { char Cadena1[] = "Cadenas de caracteres"; char Cadena2[80]; strcpy(cadena2, Cadena1); } printf("cadena1: %s\n", Cadena1); printf("cadena2: %s\n", Cadena2); return 0; Salida del programa Cadena1: Cadenas de caracteres Cadena2: Cadenas de caracteres Análisis: En la línea 2 se incluye el archivo de cabecera string.h. Este archivo contiene el prototipo de la función strcpy(). strcpy() toma dos cadenas de caracteres una cadena destino seguido de una cadena origen. Si la cadena origen es más larga que la cadena destino, strcpy() podría escribir fuera del buffer, más allá del último elemento del mismo. Vectores Para declarar un vector, escribe el tipo de variable a almacenar, seguido del nombre del vector y de un índice con el número de elementos que tendrá el vector. Ejemplo: int vectordeenteros[90]; Para acceder a los miembros de un vector, se utiliza el operador subíndice, []. Ejemplo: int ElNovenoEntero = VectorDeEnteros [8]; Los vectores cuentan desde cero. Un vector de n elementos se numera de 0 a n-1.

12 Vectores y Matrices 12 Nota del profesor: si detectas algún error, o hay alguna parte confusa, o piensas que sobra o falta alguna sección, por favor, enviadme un mensaje a Gracias por anticipado. Vuestras sugerencias se utilizarán para mejorar estos apuntes.

Introducción al tipo de dato ARRAY

Introducció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 detalles

Arrays y Cadenas en C

Arrays 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 detalles

TEMA 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 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 detalles

Tema 7 Vectores y cadenas de caracteres. Fundamentos de Informática

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 detalles

Modulo 1 El lenguaje Java

Modulo 1 El lenguaje Java Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto

Más detalles

Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C

Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C Directivas del procesador Main() { Declaraciones Definiciones proposiciones }

Más detalles

Vectores. 27/05/05 Programación Digital I 1

Vectores. 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 detalles

Tema 5 Sentencias de control de flujo. Fundamentos de Informática

Tema 5 Sentencias de control de flujo. Fundamentos de Informática Tema 5 Fundamentos de Informática Sentencias de Control Tipos de sentencias de control: Comprobación lógica para bifurcar el flujo de un programa. Sentencias de control condicional o alternativo Comprobación

Más detalles

FUNDAMENTOS DE INFORMÁTICA 1º Ingeniería Industrial

FUNDAMENTOS 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 detalles

Funciones en C. En esta unidad aprenderás a: Comprender el desarrollo de un programa utilizando funciones

Funciones en C. En esta unidad aprenderás a: Comprender el desarrollo de un programa utilizando funciones Funciones en C 03 En esta unidad aprenderás a: Comprender el desarrollo de un programa utilizando funciones Establecer la diferencia entre la definición y declaración de una función Conocer y utilizar

Más detalles

Contenidos. Funciones (suplemento) Funciones. Justificación del uso de Funciones

Contenidos. Funciones (suplemento) Funciones. Justificación del uso de Funciones Contenidos 1. Justificación del uso de funciones. 2. Declaración de funciones: prototipos. 3. Prototipos y ficheros de cabecera. 4. Polimorfismo (sobrecarga de funciones). 5. Argumentos formales y actuales.

Más detalles

LEER Y ESCRIBIR ARCHIVOS O FICHEROS EN C. FOPEN, FCLOSE, MODOS DE ACCESO READ, WRITE Y APPEND (CU00536F)

LEER Y ESCRIBIR ARCHIVOS O FICHEROS EN C. FOPEN, FCLOSE, MODOS DE ACCESO READ, WRITE Y APPEND (CU00536F) APRENDERAPROGRAMAR.COM LEER Y ESCRIBIR ARCHIVOS O FICHEROS EN C. FOPEN, FCLOSE, MODOS DE ACCESO READ, WRITE Y APPEND (CU00536F) Sección: Cursos Categoría: Curso básico de programación en lenguaje C desde

Más detalles

TEMA 3: EL LENGUAJE C: PRESENTACIÓN

TEMA 3: EL LENGUAJE C: PRESENTACIÓN TEMA 3: EL LENGUAJE C: PRESENTACIÓN Historia del lenguaje C Características del lenguaje C Estructura de un programa en C El editor de textos: elementos Funciones: de usuario y de librería Librerías de

Más detalles

Vectores y matrices. Arrays Declaración Creación Acceso a los elementos de un array Manipulación de vectores y matrices

Vectores y matrices. Arrays Declaración Creación Acceso a los elementos de un array Manipulación de vectores y matrices Vectores y matrices Arrays Declaración Creación Acceso a los elementos de un array Manipulación de vectores y matrices Algoritmos de ordenación Ordenación por selección Ordenación por inserción Ordenación

Más detalles

Herramientas computacionales para la matemática MATLAB: Scripts

Herramientas computacionales para la matemática MATLAB: Scripts Herramientas computacionales para la matemática MATLAB: Scripts Verónica Borja Macías Marzo 2012 1 Scripts Hasta ahora los comandos MATLAB que hemos visto se ejecutaban en Ia Ventana de Comandos. Aunque

Más detalles

INTRODUCCIÓN AL TIPO COMPUESTO CADENA CONTENIDOS

INTRODUCCIÓ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 detalles

7. Manejo de Archivos en C.

7. Manejo de Archivos en C. 7. Manejo de Archivos en C. Los datos que hemos tratado hasta el momento han residido en la memoria principal. Sin embargo, las grandes cantidades de datos se almacenan normalmente en un dispositivo de

Más detalles

Se 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 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 detalles

ESTRUCTURA DE DATOS: ARREGLOS

ESTRUCTURA DE DATOS: ARREGLOS ESTRUCTURA DE DATOS: ARREGLOS 1. Introduccion 2. Arreglos - Concepto - Caracteristicas 3. Arreglos Unidimensionales 4. Arreglos Bidimensionales 5. Ventajas del uso de arreglos 6. Ejemplo 1. Introducción

Más detalles

TIPOS DE DATOS DEFINIDOS POR EL PROGRAMADOR: Estructuras CONTENIDOS

TIPOS DE DATOS DEFINIDOS POR EL PROGRAMADOR: Estructuras CONTENIDOS ESTRUCTURAS CONTENIDOS 1. Concepto de estructura 2. Definición del tipo de dato estructura 3. Declaración de variables de tipo estructura 4. Inicialización de variables de tipo estructura 5. Acceso a los

Más detalles

1 Estructura básica de un programa C++

1 Estructura básica de un programa C++ Elementos básicos de un lenguaje de alto nivel: C++ CONTENIDOS 1. Estructura básica de un programa C++. 2. Tipos de datos simples. 3. Constantes y variables en C++. Declaración. 4. Operadores y expresiones.

Más detalles

Academia técnica de computación A.T.C.

Academia técnica de computación A.T.C. Academia técnica de computación A.T.C. Free Pascal (FPC) El Free Pascal es un compilador Pascal portable, libre y de código abierto, que representa una alternativa a los productos comerciales Turbo Pascal

Más detalles

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por

Más detalles

Ejercicio 1 (2 puntos. Tiempo: 25 minutos)

Ejercicio 1 (2 puntos. Tiempo: 25 minutos) Fecha de publicación de notas: jueves 18 de Julio. Fecha de revisión: viernes 19 de Julio a las 10:00h. Despacho C-209. Ejercicio 1 (2 puntos. Tiempo: 25 minutos) Se desea desarrollar un programa en C

Más detalles

Preliminares. Tipos de variables y Expresiones

Preliminares. Tipos de variables y Expresiones Preliminares. Tipos de variables y Expresiones Felipe Osorio Instituto de Estadística Pontificia Universidad Católica de Valparaíso Marzo 5, 2015 1 / 20 Preliminares Computadoras desarrollan tareas a un

Más detalles

Asignatura: Laboratorio de Computadores. Curso 2007-08. 5º Semestre, 3er. Curso. Ingeniería Informática. Práctica de SOCKETS

Asignatura: Laboratorio de Computadores. Curso 2007-08. 5º Semestre, 3er. Curso. Ingeniería Informática. Práctica de SOCKETS Asignatura: Laboratorio de Computadores. Curso 2007-08. 5º Semestre, 3er. Curso. Ingeniería Informática. Práctica de SOCKETS Especificación de la práctica: Un protocolo sencillo para transferencia de ficheros

Más detalles

El lenguaje C. #define MAX LINEA 1000 /* maximo tamanio de linea de entrada */

El lenguaje C. #define MAX LINEA 1000 /* maximo tamanio de linea de entrada */ Principios de Programación El lenguaje C 1. Variables locales y globales 1.1. Variables locales Las funciones permiten al programador modularizar un programa. Todas las variables declaradas en las definiciones

Más detalles

Introducción a la programación orientada a objetos

Introducción a la programación orientada a objetos Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases 3. El tipo Struct 4. Diferencias entre Class y Struct 5. Pilares de la Programación

Más detalles

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.

Más detalles

TécniquesInformàtiques PRÀCTICA 6 (2 Sessions) Curs 2004-2005

TécniquesInformàtiques PRÀCTICA 6 (2 Sessions) Curs 2004-2005 Objetivo de la práctica: - Adquirir conocimietnos en en el uso de estructuras de datos basadas en series de datos del mismo tipo: vectores y matrices en C/C++. - Uso de caracteres de texto en C/C++.Concepto

Más detalles

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

En cualquier caso, tampoco es demasiado importante el significado de la B, si es que lo tiene, lo interesante realmente es el algoritmo. Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa

Más detalles

LABORATORIO 1 OPERACIONES DE ENTRADA Y SALIDA

LABORATORIO 1 OPERACIONES DE ENTRADA Y SALIDA LABORATORIO 1 OPERACIONES DE ENTRADA Y SALIDA 1 OBJETIVOS Al finalizar esta actividad, serás capaz de: Entender el funcionamiento del compilador. Definir variables y efectuar asignaciones de valores con

Más detalles

Capítulo 4. Vectores y matrices. 4.1 Declaración de tablas. 4.2 Declaración estática de tablas

Capítulo 4. Vectores y matrices. 4.1 Declaración de tablas. 4.2 Declaración estática de tablas Capítulo 4 Vectores y matrices En FORTRAN se puede utilizar un tipo especial de variable que sirve, en particular, para almacenar vectores y matrices. De esta forma, se utiliza un sólo nombre para referirse

Más detalles

EJEMPLOS DE PROGRAMACIÓN DE FUNCIONES EN C: Página 1 de 5

EJEMPLOS DE PROGRAMACIÓN DE FUNCIONES EN C: Página 1 de 5 EJEMPLOS DE PROGRAMACIÓN DE FUNCIONES EN C: Página 1 de 5 1.- Realizar una función llamada par, que toma un número entero como parámetro, y devuelve 1 si es par o devuelve 0 si es impar. NOTA: Para saber

Más detalles

Tipos de variables en Visual Basic (integer, single, double, string, object, etc.). Ejemplos. (CU00308A)

Tipos de variables en Visual Basic (integer, single, double, string, object, etc.). Ejemplos. (CU00308A) aprenderaprogramar.com Tipos de variables en Visual Basic (integer, single, double, string, object, etc.). Ejemplos. (CU00308A) Sección: Cursos Categoría: Curso Visual Basic Nivel I Fecha revisión: 2029

Más detalles

Objetivo de aprendizaje del tema

Objetivo de aprendizaje del tema Computación II Tema 3. Identificadores, palabras clave y tipos de datos Objetivo de aprendizaje del tema Al finalizar el tema serás capaz de: Distinguir i entre modificadores d válidos y no válidos. Enumerar

Más detalles

Arreglos. // Incluir E/S y Librerías Standard #include <stdlib.h> #include <stdio.h>

Arreglos. // Incluir E/S y Librerías Standard #include <stdlib.h> #include <stdio.h> Arreglos Introducción. En los temas anteriores se han estudiado los diferentes tipos de datos simples de C++, usados para representar valores simples como enteros, reales o caracteres. Sin embargo, en

Más detalles

2.1.- EJEMPLO DE UN PROGRAMA FORTRAN

2.1.- EJEMPLO DE UN PROGRAMA FORTRAN 2.1.- EJEMPLO DE UN PROGRAMA FORTRAN Con el presente apartado comenzaremos a conocer cómo se escribe un programa en lenguaje FORTRAN bajo el entorno de programación FORTRAN. En primer lugar conozcamos

Más detalles

11. Algunas clases estándar de Java (II)

11. Algunas clases estándar de Java (II) 122 A. García-Beltrán y J.M. Arranz 11. Algunas clases estándar de Java (II) Objetivos: a) Presentar la clase predefinida en Java para trabajar con arrays b) Interpretar el código fuente de una aplicación

Más detalles

El lenguaje de Programación C. Fernando J. Pereda <ferdy@gentoo.org>

El lenguaje de Programación C. Fernando J. Pereda <ferdy@gentoo.org> El lenguaje de Programación C Fernando J. Pereda Por qué aprender C? Portable y muy extendido Estándar (C89, C99) El lenguaje de los sistemas Un lenguaje fácil (no, no es broma) Por

Más detalles

SOLUCION EXAMEN junio 2006

SOLUCION EXAMEN junio 2006 SOLUCION EXAMEN junio 2006 1. Explique razonadamente si las siguientes afirmaciones son verdaderas o falsas: I) (1 p) En UNIX únicamente se distinguen dos tipos de procesos: los procesos de usuario y los

Más detalles

ARREGLOS DEFINICION GENERAL DE ARREGLO

ARREGLOS DEFINICION GENERAL DE ARREGLO ARREGLOS DEFINICION GENERAL DE ARREGLO Conjunto de cantidades o valores homogéneos, que por su naturaleza se comportan de idéntica forma y deben de ser tratados en forma similar. Se les debe de dar un

Más detalles

Ejemplos de conversión de reales a enteros

Ejemplos de conversión de reales a enteros Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print

Más detalles

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ;

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ; TEMA 5. CONTROL DE FLUJO DEL PROGRAMA 5.1 Sentencias Una sentencia es una expresión seguida de un punto y coma. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ; El ; es obligatorio

Más detalles

Examen Principios de Programación Febrero 2012

Examen Principios de Programación Febrero 2012 Por favor siga las siguientes indicaciones: Escriba con lápiz. Escriba su nombre y número de documento en todas las hojas que entregue. Numere las hojas e indique el total de hojas en la primera de ellas.

Más detalles

Sintaxis y Convenciones de Java. M. en C. Erika Vilches

Sintaxis y Convenciones de Java. M. en C. Erika Vilches Sintaxis y Convenciones de Java M. en C. Erika Vilches Estructura del Código en Java Hay una clase en un archivo fuente Hay métodos en una clase Hay enunciados en un método Anatomía de una Clase Cuando

Más detalles

PRACTICA #1. Aprender a programar una interrupción software empleando C y/o Ensamblador.

PRACTICA #1. Aprender a programar una interrupción software empleando C y/o Ensamblador. PRACTICA #1 Aprender a programar una interrupción software empleando C y/o Ensamblador. Aprender a manipular dispositivos externos (8253, 8255) desde C y/o ensamblador. PROCEDIMIENTO: Vamos a programar

Más detalles

ARCHIVOS. 1. Introducción. 2. Definición de archivo. 3. Archivos de acceso secuencial. 4. Gestión de un archivo secuencial de estructuras

ARCHIVOS. 1. Introducción. 2. Definición de archivo. 3. Archivos de acceso secuencial. 4. Gestión de un archivo secuencial de estructuras ARCHIVOS 1. Introducción 2. Definición de archivo 3. Archivos de acceso secuencial 3.1. fopen 3.2. fclose 3.3. fcloseall 3.4. putc 3.5. getc 3.6. fscanf 3.7. fprintf 4. Gestión de un archivo secuencial

Más detalles

FACULTAD DE INGENIERÍA

FACULTAD DE INGENIERÍA NOMBRE DEL PROFESOR: Ing. Héctor Manuel Quej Cosgaya NOMBRE DE LA PRÁCTICA: Variables y Tipos de Datos PRÁCTICA NÚM. [ 1 ] LABORATORIO: MATERIA: UNIDAD: TIEMPO: Centro de Ingeniería Computacional Lenguaje

Más detalles

AUTOR CARLOS EDUARDO BUENO VERGARA JORGE ARMANDO BUENO VERGARA USO DE LOS OBJETOS DEL PROGRAMA. Dfd INFORMÁTICA II PROFESOR. JOSÉ FRANCISCO AMADOR

AUTOR CARLOS EDUARDO BUENO VERGARA JORGE ARMANDO BUENO VERGARA USO DE LOS OBJETOS DEL PROGRAMA. Dfd INFORMÁTICA II PROFESOR. JOSÉ FRANCISCO AMADOR AUTOR CARLOS EDUARDO BUENO VERGARA JORGE ARMANDO BUENO VERGARA USO DE LOS OBJETOS DEL PROGRAMA Dfd INFORMÁTICA II PROFESOR. JOSÉ FRANCISCO AMADOR UNIVERSIDAD TECNOLÓGICA DE PEREIRA. LICENCIATURA EN COMUNICACIÓN

Más detalles

Tutorial Básico de vbscript

Tutorial Básico de vbscript Tutorial Básico de vbscript Bueno, primero aclarar que este tutorial, pretende explicar de manera básica las distintas instrucciones aplicadas en visual basic script (vbs de aquí en más), para que así

Más detalles

ISTP CIDET COMPUTACION E INFORMATICA ARREGLOS EN JAVA

ISTP CIDET COMPUTACION E INFORMATICA ARREGLOS EN JAVA ARREGLOS EN JAVA I I N T R O D U C C I Ó N En las sesiones anteriores, los datos manejados en los programas han sido datos simples (carácter, entero, reales) En un gran número de problemas es necesario

Más detalles

Una variable de clase escalar tiene un nivel de indirección igual a 1. Por ejemplo, las variables i, b y x definidas como se muestra a continuación.

Una variable de clase escalar tiene un nivel de indirección igual a 1. Por ejemplo, las variables i, b y x definidas como se muestra a continuación. Descripción de la semántica de ALFA En esta descripción sólo se mencionarán los aspectos en los que el lenguaje de programación ALFA pueda diferir de otros lenguajes de programación de alto nivel. Se sobreentienden

Más detalles

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L.

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L. Manual de Usuario Programa diseñado y creado por Contenido 1. Acceso al programa... 3 2. Opciones del programa... 3 3. Inicio... 4 4. Empresa... 4 4.2. Impuestos... 5 4.3. Series de facturación... 5 4.4.

Más detalles

Mi primer proyecto en Dev-C++

Mi primer proyecto en Dev-C++ Mi primer proyecto en Dev-C++ Para realizar esta actividad deberás disponer de un ordenador en el que esté instalado el Dev-C++. Debes ir realizando cada uno de los pasos indicados, en el mismo orden en

Más detalles

Introducción al lenguaje JAVA

Introducción al lenguaje JAVA Universidad Autónoma de Tlaxcala Introducción al lenguaje JAVA M.C.. José Juan Hernández ndez Mora Segunda Sesión 1. Arreglos 2. Matrices 3. Clases en Java 4. Clases de Usuario en Java 5. Objetos definidos

Más detalles

Práctica 0. Emulador XENON de la computadora CESIUS

Práctica 0. Emulador XENON de la computadora CESIUS Práctica 0. Emulador XENON de la computadora CESIUS 1. Introducción El objeto de la presente práctica es permitir al alumno ensayar y familiarizarse con los conceptos de programación de computadoras digitales

Más detalles

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1 Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1.1 Ejercicio 1: Máquina Expendedora (3.5 ptos.)... 1 1.2 Ejercicio 2: Clase Circulo (1.0 pto.)... 3 1.3 Ejercicio

Más detalles

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero.

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Uso de Ficheros Todas las estructuras de datos vistas hasta ahora utilizan la

Más detalles

2. Estructura de un programa en Java

2. Estructura de un programa en Java 24 A. García-Beltrán y J.M. Arranz 2. Estructura de un programa en Java Objetivos: a) Describir la estructura del código fuente de una aplicación Java b) Presentar los conceptos de comentario y de identificador

Más detalles

Tema 2. Memoria Dinámica. 2.1 Datos estáticos y dinámicos

Tema 2. Memoria Dinámica. 2.1 Datos estáticos y dinámicos Tema 2 Memoria Dinámica 2.1 Datos estáticos y dinámicos Datos estáticos: su tamaño y forma es constante durante la ejecución de un programa y por tanto se determinan en tiempo de compilación. El ejemplo

Más detalles

Herramientas computacionales para la matemática MATLAB: Otros tipos de datos

Herramientas computacionales para la matemática MATLAB: Otros tipos de datos Herramientas computacionales para la matemática MATLAB: Otros tipos de datos Verónica Borja Macías Mayo 2012 1 Otros tipos de datos La especialidad de MATLAB es trabajar con vectores y matrices, pero MATLAB

Más detalles

Objetivos. El alumno conocerá los elementos indispensables de un ambiente de programación y será capaz de realizar programas básicos en lenguaje C.

Objetivos. El alumno conocerá los elementos indispensables de un ambiente de programación y será capaz de realizar programas básicos en lenguaje C. Objetivos El alumno conocerá los elementos indispensables de un ambiente de programación y será capaz de realizar programas básicos en lenguaje C. Al final de esta práctica el alumno podrá: 1. Decir cuáles

Más detalles

Fórmulas y funciones

Fórmulas y funciones 05... Fórmulas y funciones En este tema vamos a profundizar en el manejo de funciones ya definidas por Excel, con el objetivo de agilizar la creación de hojas de cálculo, estudiando la sintaxis de éstas

Más detalles

Informática I. While & do While

Informática I. While & do While Asignatura: Informática I Trabajo práctico Nº5 While & do While Estructura repetitiva MIENTRAS o while En C la sentencia while (condición o expresión) instrucciones; es seguramente la más utilizada. La

Más detalles

Para leer la entrada de consola, lo primero que se hace es construir un Scanner que este asociado al flujo de entrada estándar System.

Para leer la entrada de consola, lo primero que se hace es construir un Scanner que este asociado al flujo de entrada estándar System. CICLO: 01/2010 Universidad Don Bosco Materia: Lenguaje de Programación III Contenido: 1-Lectura de Datos de entrada. 2-Introduccion a JOPTIONPANE. 3-Estructuras de Control. ->LECTURA DE DATOS DE ENTRADA

Más detalles

Vectores y matrices. Fundamentos de Programación Fundamentos de Programación I

Vectores y matrices. Fundamentos de Programación Fundamentos de Programación I Vectores y matrices Fundamentos de Programación Fundamentos de Programación I 1 Ejemplo de utilización n de vectores: gráfico de producción En una compañía nos han encargado escribir un programita que

Más detalles

If anidado: /*ifani.c*/ main() { if (getche()=='s') if (getche()=='i') printf("\n tu tecleaste si"); }

If anidado: /*ifani.c*/ main() { if (getche()=='s') if (getche()=='i') printf(\n tu tecleaste si); } El IF: Es muy parecido al while en formato y en operacion, en ambos si la condición no se cumple (es falsa) no se ejecutará el cuerpo de la declaracion. char ch; ch=getche(); if (ch=='s') printf("\ntu

Más detalles

Contenido. Capítulo 1. Introducción a lenguaje C 1

Contenido. Capítulo 1. Introducción a lenguaje C 1 Contenido Capítulo 1. Introducción a lenguaje C 1 Introducción... 2 Qué es un lenguaje de programación?... 2 Tipos de lenguajes de programación... 2 Introducción a lenguaje C... 2 Historia de lenguaje

Más detalles

Introducción a la Programación en MATLAB

Introducción a la Programación en MATLAB Introducción a la Programación en MATLAB La programación en MATLAB se realiza básicamente sobre archivos M, o M-Files. Se los denomina de esta forma debido a su extensión.m. Estos archivos son simple archivos

Más detalles

ORGANIZAR LA INFORMACIÓN: EL EXPLORADOR DE WINDOWS

ORGANIZAR LA INFORMACIÓN: EL EXPLORADOR DE WINDOWS ORGANIZAR LA INFORMACIÓN: EL EXPLORADOR DE WINDOWS Organizar la información: El explorador de Windows... 1 Introducción... 1 Explorador de Windows... 2 Ejercicio práctico del explorador de Windows... 5

Más detalles

Práctica 2: Simón dice

Práctica 2: Simón dice Práctica 2: Simón dice Fecha de entrega: 31 de enero de 2016 0.- Descripción del juego (Wikipedia.org) Simon dice es un juego electrónico, creado por Ralph Baer, que consiste en reproducir una secuencia

Más detalles

Abelardo Pardo. Iria Estévez Ayres. Damaris Fuentes Lorenzo. Pablo Basanta Val. Pedro J. Muñoz Merino. Hugo A. Parada.

Abelardo Pardo. Iria Estévez Ayres. Damaris Fuentes Lorenzo. Pablo Basanta Val. Pedro J. Muñoz Merino. Hugo A. Parada. Arquitectura de sistemas Abelardo Pardo University of Sydney School of Electrical and Information Engineering NSW, 2006, Australia Autor principal del curso de 2009 a 2012 Iria Estévez Ayres Damaris Fuentes

Más detalles

Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS

Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS Por Andrés Raúl Bruno Saravia Entrega Nº 5. Cómo declaramos una variable en Lenguaje C? En C siempre se deben declarar las variables.

Más detalles

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO. Introducción FACULTAD DE INGENIERÍA. Ordenación

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO. Introducción FACULTAD DE INGENIERÍA. Ordenación Introducción Uno de los procedimientos más comunes y útiles en el procesamiento de datos, es la clasificación u ordenación de los mismos. Se considera ordenar al proceso de reorganizar un conjunto dado

Más detalles

LAS BARRAS. La barra de acceso rápido

LAS BARRAS. La barra de acceso rápido LS RRS La barra de título Contiene el nombre del documento sobre el que se está trabajando en ese momento. Cuando creamos un libro nuevo se le asigna el nombre provisional Libro1, hasta que lo guardemos

Más detalles

Creación y administración de grupos de dominio

Creación y administración de grupos de dominio Creación y administración de grupos de dominio Contenido Descripción general 1 a los grupos de Windows 2000 2 Tipos y ámbitos de los grupos 5 Grupos integrados y predefinidos en un dominio 7 Estrategia

Más detalles

Algoritmos. Autor: José Ángel Acosta Rodríguez

Algoritmos. Autor: José Ángel Acosta Rodríguez Autor: 2006 ÍNDICE Página Índice 1 Problema 1. Movimiento de figuras geométricas.2 Problema 2. Conversión decimal a binario....3 Problema 3. Secuencias binarias..4 Problema 4. Conversión a binario a octal...

Más detalles

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016!

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016! INFORMÁTICA Práctica4. ProgramaciónbásicaenC. GradoenIngenieríaenElectrónicayAutomáticaIndustrial Curso2015H2016 v2.1(18.09.2015) A continuación figuran una serie de ejercicios propuestos, agrupados por

Más detalles

Para crear una lista como la anterior, primero escribe la información, y después selecciona el texto y aplícale el formato de viñetas.

Para crear una lista como la anterior, primero escribe la información, y después selecciona el texto y aplícale el formato de viñetas. Módulo 3 Herramientas de Cómputo Listas, tabulaciones, columnas y cuadros de texto Listas En muchas ocasiones es necesario que enumeres diferentes elementos en tus documentos. Word no sólo reconoce números

Más detalles

Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011

Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011 Módulo 2. Fundamentos de Programación Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011 1 CONTENIDO Tema 1. Conceptos generales de algorítmica Tema 2. Sentencias

Más detalles

Contenidos. Archivos en C++ Archivos en C++ Introducción

Contenidos. Archivos en C++ Archivos en C++ Introducción Contenidos 1. Introducción. 2. Manipulación de ficheros. 3. Organización de archivos. 4. Tipo de almacenamiento. 5. Biblioteca de flujos. 6. Operaciones asociadas a archivos: Abrir fichero, Cerrar fichero,

Más detalles

Uso del Programa Gantt Project

Uso del Programa Gantt Project Uso del Programa Gantt Project Presentación En esta práctica guiada aprenderás varias cosas relacionadas con el uso de Gantt Project, que es una aplicación de ayuda a la gestión de proyectos: Especificar

Más detalles

Práctica 3: Programación con subrutinas

Práctica 3: Programación con subrutinas Práctica 3: Programación con subrutinas 3.1 Objetivos El objetivo de esta práctica es estudiar el soporte del ensamblador del ARM para la gestión de subrutinas, para lo que resulta necesario familiarizarse

Más detalles

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES CASO PRÁCTICO DISTRIBUCIÓN DE COSTES Nuestra empresa tiene centros de distribución en tres ciudades europeas: Zaragoza, Milán y Burdeos. Hemos solicitado a los responsables de cada uno de los centros que

Más detalles

EMPLEO NTIC`S II SEGUNDO SEMESTRE

EMPLEO NTIC`S II SEGUNDO SEMESTRE UNIVERSIDAD TECNICA DE AMBATO FACULTAD DE CONTABILIDAD Y AUDITORIA EMPLEO NTIC`S II SEGUNDO SEMESTRE Ing. Luz Perez SEMESTRE MARZO JULIO 2009 EXCEL Excel es un programa del tipo Hoja de Cálculo que permite

Más detalles

TEMA 4. ELEMENTOS BÁSICOS DE PROGRAMACIÓN

TEMA 4. ELEMENTOS BÁSICOS DE PROGRAMACIÓN TEMA 4. ELEMENTOS BÁSICOS DE PROGRAMACIÓN 4.1 Definiciones y palabras reservadas básicas del C El lenguaje C++ está compuesto por: 32 palabras clave (estándar ANSI), comunes a todos los compiladores de

Más detalles

EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO)

EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO) EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO) Luis José Sánchez 1. Realiza un programa que sume los 100 números siguientes a un número entero y positivo introducido por teclado. Se debe

Más detalles

CURSO 2010-2011 TECNOLOGÍA TECNOLOGÍA 4º ESO TEMA 5: Lógica binaria. Tecnología 4º ESO Tema 5: Lógica binaria Página 1

CURSO 2010-2011 TECNOLOGÍA TECNOLOGÍA 4º ESO TEMA 5: Lógica binaria. Tecnología 4º ESO Tema 5: Lógica binaria Página 1 Tecnología 4º ESO Tema 5: Lógica binaria Página 1 4º ESO TEMA 5: Lógica binaria Tecnología 4º ESO Tema 5: Lógica binaria Página 2 Índice de contenido 1. Señales analógicas y digitales...3 2. Código binario,

Más detalles

El e-commerce de Grupo JAB es una herramienta que permite a los clientes del Grupo, realizar un amplio conjunto de servicios de consulta, petición y

El e-commerce de Grupo JAB es una herramienta que permite a los clientes del Grupo, realizar un amplio conjunto de servicios de consulta, petición y El de Grupo JAB es una herramienta que permite a los clientes del Grupo, realizar un amplio conjunto de servicios de consulta, petición y compra en los diversos almacenes del Grupo JAB. En concreto podremos:

Más detalles

PRACTICA 6. VECTORES Y MATRICES.

PRACTICA 6. VECTORES Y MATRICES. PRACTICA 6. VECTORES Y MATRICES. 1. Introducción. Los vectores y matrices son uno de los medios principales para el almacenamiento de los datos en un programa. En esta práctica veremos todos los conceptos

Más detalles

DIAGRAMAS DE FLUJO: DFD

DIAGRAMAS DE FLUJO: DFD DIAGRAMAS DE FLUJO: DFD DFD es un programa de libre disposición para ayuda al diseño e implementación de algoritmos expresados en diagramas de flujo (DF). Además incorpora opciones para el depurado de

Más detalles

LENGUAJE ANSI C Guía de referencia

LENGUAJE ANSI C Guía de referencia Apéndice W2 LENGUAJE ANSI C Guía de referencia C.1. Elementos básicos de un programa El lenguaje C fue desarrollado en Bell laboratories para su uso en investigación y se caracteriza por un gran número

Más detalles

Combinar correspondencia

Combinar correspondencia Combinar correspondencia Mediante la opción Combinar correspondencia Word2010 nos permite incluir en un documento, datos almacenados en otro sitio. De esta forma podremos obtener copias de un mismo documento

Más detalles

Operación de Microsoft Word

Operación de Microsoft Word Generalidades y conceptos Combinar correspondencia Word, a través de la herramienta combinar correspondencia, permite combinar un documento el que puede ser una carta con el texto que se pretende hacer

Más detalles

LAS CONSULTAS ACCESS 2007. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

LAS CONSULTAS ACCESS 2007. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE LAS CONSULTAS ACCESS 2007 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE LAS CONSULTAS En esta unidad veremos cómo crear consultas y manejarlas para la edición de registros de tablas

Más detalles

Programación. Ejercicios Tema 4 Estructuras de Control Repetitivas

Programación. Ejercicios Tema 4 Estructuras de Control Repetitivas Ejercicios Tema 4 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero Jose A. Iglesias Martínez Jose Luis Mira SOLUCIONES 1. Escriba un programa en C que

Más detalles

Sentencias o instrucciones en Visual BASIC

Sentencias o instrucciones en Visual BASIC Tecnología a de la Informació Sentencias o instrucciones en Visual BASIC REM Tecnología a de la Informació REM es una sentencia no ejecutable y permite introducir comentarios en los programas. A esta práctica

Más detalles

Contenidos. Gestión dinámica de memoria. Gestión dinámica de memoria. Introducción. 1. Introducción 2. El operador NEW 3. El operador DELETE

Contenidos. Gestión dinámica de memoria. Gestión dinámica de memoria. Introducción. 1. Introducción 2. El operador NEW 3. El operador DELETE Contenidos 1. Introducción 2. El operador NEW 3. El operador DELETE 1 Introducción Hasta ahora hemos visto que cada vez que queremos usar una variable debemos reservarle un lugar de la memoria al comenzar

Más detalles

Introducción al Dev-C++

Introducción al Dev-C++ Introducción al Dev-C++ El Entorno de Desarrollo Dev-C++ http://www.bloodshed.net/devcpp.html Incluye todas las operaciones necesarias para crear o modificar un programa. Posee un editor, un compilador

Más detalles