Tema 9. Vectores y Matrices

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Arreglos. // Incluir E/S y Librerías Standard #include #include

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

El lenguaje de Programación C. Fernando J. Pereda

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

El lenguaje C. 1. Más sobre Instrucciones de control

El lenguaje C. 1. Más sobre Instrucciones de control Principios de ción El lenguaje C 1. Más sobre Instrucciones de control Estudiaremos con mayor detalle la repetición y presentaremos estructuras adicionales de control de la repetición a saber las estructuras

Más detalles

Reglas básicas de la programación en lenguaje C

Reglas básicas de la programación en lenguaje C 0. Introducción Reglas básicas de la programación en lenguaje C ISO - SO Departament d'arquitectura de Computadors Universitat Politècnica de Catalunya C es un lenguaje de programación de propósito general.

Más detalles

Estructura de datos (arreglos) Vectores y Matrices

Estructura de datos (arreglos) Vectores y Matrices Apunte del curso PROGRAMACIÓN (FI-UBA,, J. T. P. Ing. Z. CATALDI; A.T.P. Srta. A Pauluzzi, Sr. C Corradino, Sr. F Gómez Estructura de datos (arreglos) Hasta aquí se han visto distintos tipos de estructuras

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

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

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

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

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

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

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

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

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

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

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

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

3.2 Operaciones aritmético-lógicas en Pascal

3.2 Operaciones aritmético-lógicas en Pascal 3.2 Operaciones aritmético-lógicas en Pascal Operadores Los operadores sirven para combinar los términos de las expresiones. En Pascal, se manejan tres grupos de operadores : 1. ARITMÉTICOS 2. RELACIONALES

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

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

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

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

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

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 C. Tipos de Datos Simples y Estructuras de Control

Lenguaje C. Tipos de Datos Simples y Estructuras de Control Lenguaje C Tipos de Datos Simples y Estructuras de Control Lenguaje C C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolución del anterior lenguaje

Más detalles

Pseudolenguaje. (1 byte) 0.. 255 (valores códigos ASCII) [CHAR_MIN.. CHAR_MAX] (Definida en ) No hay. Dominio 0.. 2 n 1 [MIN(C)..

Pseudolenguaje. (1 byte) 0.. 255 (valores códigos ASCII) [CHAR_MIN.. CHAR_MAX] (Definida en <limits.h>) No hay. Dominio 0.. 2 n 1 [MIN(C).. Tipo C Dominio 0.. 2 n -1 [MIN(C).. MAX(C)] Operadores Aritméticos Otras funciones No hay CHR(...) CAP(...) ORD(...) E/S No Formateada: Leer (...) Escribir (...) char (1 byte) 0.. 255 (valores códigos

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

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

MASTER EN INGENIERÍA DEL HORMIGÓN

MASTER EN INGENIERÍA DEL HORMIGÓN MASTER EN INGENIERÍA DEL HORMIGÓN MODELOS PREDICTIVOS Y DE OPTIMIZACIÓN DE ESTRUCTURAS DE HORMIGÓN Profesores: Víctor Yepes Piqueras, Julián Alcalá González PROGRAMACIÓN DE UN GENERADOR DE LISTAS DE NÚMEROS

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

Programación básica C++

Programación básica C++ Programación en Lenguaje C++ Programación básica C++ 6.3.1 Declaración de variables Introducción 6 Las variables sirven para identificar un determinado valor. Es importante tener en cuenta, que una variable

Más detalles

Programación: QBASIC

Programación: QBASIC 1. QBASIC Programación: QBASIC Guía del alumno Qbasic es una versión moderna del lenguaje BASIC. Se trata de un lenguaje de alto nivel. En un lenguaje de alto nivel las instrucciones tienen un formato

Más detalles

UNIVERSIDAD DR. JOSE MATIAS DELGADO

UNIVERSIDAD DR. JOSE MATIAS DELGADO NOMBRE DE LA ASIGNATURA: PROGRAMACION DE COMPUTADORAS 1 a. Generalidades. Duración del Ciclo en Semanas: Número de Orden: 16 Código: PRC1 16 Ciclo Académico: Duración/Hora Clase: 50 III minutos Prerrequisito

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

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

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

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

Curso 0 de Informática

Curso 0 de Informática Curso 0 de Informática 2015-2016 Tema 1: Introducción a la Informática y Conceptos básicos 1 Motivación (I): En los procesos industriales, cada vez es mayor el uso de sistemas informáticos para: Monitorización,

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

El lenguaje C: Elementos básicos del lenguaje

El lenguaje C: Elementos básicos del lenguaje Facultad de Ciencias Exactas, Ingeniería y Agrimensura Departamento de Sistemas e Informática Escuela de Electrónica Informática II El lenguaje C: Elementos básicos del lenguaje Este material debe utilizarse

Más detalles

Tema 2: La clase string

Tema 2: La clase string : string Programación 2 Curso 2013-2014 Índice 1 Cadenas de caracteres en C 2 Entrada / salida 3 entre vectores de caracteres y string 4 5 Cadenas de caracteres en C En C, las cadenas de caracteres tienen

Más detalles

www.aprendoencasa.com Curso Introducción JAVA Pág.: 1

www.aprendoencasa.com Curso Introducción JAVA Pág.: 1 www.aprendoencasa.com Curso Introducción JAVA Pág.: 1 Introducción Java es un lenguaje basado en la programación orientada a objetos (POO), este tipo de programación va más allá del tipo de programación

Más detalles

Formatos para prácticas de laboratorio

Formatos para prácticas de laboratorio Fecha de efectividad: CARRERA PLAN DE ESTUDIO CLAVE ASIGNATURA NOMBRE DE LA ASIGNATURA LSC 2003-1 5221 Lenguaje de Programación Estructurada PRÁCTICA No. 8 LABORATORIO DE NOMBRE DE LA PRÁCTICA Licenciado

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

!!!!!!!! !!!!! 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

FUNDAMENTOS DE PROGRAMACIÓN

FUNDAMENTOS DE PROGRAMACIÓN FUNDAMENTOS DE PROGRAMACIÓN Sabino Miranda Jiménez Universidad Autónoma del Estado de México (UAEM) Apuntadores (1) Un apuntador es una variable que contiene la dirección de una ora variable Generan código

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

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

Entrada y salida de datos en C y C++

Entrada y salida de datos en C y C++ Universidad Nacional de Rosario Facultad de Ciencias Exactas, Ingeniería y Agrimensura Escuela de Ingeniería Electrónica Cátedra de Informática II Entrada y salida de datos en C y C++ Informática II Entrada/Salida

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

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

Cómo nombrar variables ( 2&

Cómo nombrar variables ( 2& &'()*+,, *)-.&'*/0+!" #$ # http://www.escet.urjc.es/~aiiq/ Introducción a Visual Studio.NET Aprendiendo el IDE de Visual Basic.NET Elementos del lenguaje. Variables y estructuras de datos Introducción

Más detalles

Introducción a los Computadores Arreglos en C

Introducción a los Computadores Arreglos en C Introducción a los Computadores Arreglos en C Alejandro Piedrahita H. Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia Copyleft 2013. Reproducción permitida bajo

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

CONCEPTOS BASICOS DEL LENGUAJE JAVA

CONCEPTOS BASICOS DEL LENGUAJE JAVA CONCEPTOS BASICOS DEL LENGUAJE JAVA NOMENCLATURA GENERAL En Java se distinguen las letras mayúsculas y minúsculas. Las reglas del lenguaje respecto a los nombres de variables son muy amplias y permiten

Más detalles

Curso de programación en C++ Apuntes de clase EUI (UPV) Valencia, 17 al 28 de Julio de 1995. Sergio Talens Oliag

Curso de programación en C++ Apuntes de clase EUI (UPV) Valencia, 17 al 28 de Julio de 1995. Sergio Talens Oliag Curso de programación en C++ EUI (UPV) Valencia, 17 al 28 de Julio de 1995 Apuntes de clase Sergio Talens Oliag Contenidos BASES TEÓRICAS. INTRODUCCIÓN A LA POO 1 INTRODUCCIÓN.1 PARADIGMAS DE PROGRAMACIÓN..1

Más detalles

LENGUAJE. Tema 1 - Introducción

LENGUAJE. Tema 1 - Introducción LENGUAJE Tema 1 - Introducción HISTORIA DEL LENGUAJE C El lenguaje de programación C fue creado por Dennis Ritchie cuando trabajaba en Bell Laboratories de AT&T junto con Ken Thompson en el diseño del

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

SESIÓN DE EJERCICIOS E4

SESIÓN DE EJERCICIOS E4 SESIÓN DE EJERCICIOS E4 Primera parte: ejercicios test(soluciones al final) A resolver antes de comenzar la sesión en el aula Ejercicio 1 int m[n][n] = 1, 1, 1, 2, 2, 2, 3, 3, 3; for(x=1; x < N; x++) for(y=0;

Más detalles

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03.

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03. INFORMÁTICA Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial Curso 2013-2014 v1.0 (05.03.14) A continuación figuran una serie de ejercicios propuestos, agrupados

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

Formato para Prácticas de Laboratorio

Formato para Prácticas de Laboratorio PROGRAMA EDUCATIVO PLAN DE ESTUDIO CLAVE DE UNIDAD DE APRENDIZAJE NOMBRE DE LA UNIDAD DE APRENDIZAJE LSC 2009-2 PROGRAMACION ESTRUCTURADA PRÁCTICA No. 2 LABORATORIO DE NOMBRE DE LA PRÁCTICA ARREGLOS PARALELOS

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

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

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

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

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

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

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

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

Esquema de un programa en C: bloques básicos

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

Estructuras de control

Estructuras de control Estructuras de control Programación estructurada Estructuras condicionales La sentencia if La cláusula else Encadenamiento y anidamiento El operador condicional?: La sentencia switch Estructuras repetitivas/iterativas

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

Segundo Taller Final de PROGRAMACIÓN ORIENTADO A OBJETOS. INGENIERÍA DE SISTEMAS. Docente y Administrativo: Luz Esperanza Espitia Preciado

Segundo Taller Final de PROGRAMACIÓN ORIENTADO A OBJETOS. INGENIERÍA DE SISTEMAS. Docente y Administrativo: Luz Esperanza Espitia Preciado Segundo Taller Final de PROGRAMACIÓN ORIENTADO A OBJETOS. Código: O613 INGENIERÍA DE SISTEMAS Docente y Administrativo: Luz Esperanza Espitia Preciado Componente: Teórico Práctico. F. Vigencia: 8/10/2.012

Más detalles

Elementos léxicos del lenguaje de programación Java

Elementos léxicos del lenguaje de programación Java Elementos léxicos del lenguaje de programación Java Elementos léxicos del lenguaje de programación Java Palabras reservadas Identificadores Literales Operadores Delimitadores Comentarios Apéndices Operadores

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