Introducción a los Computadores Arreglos en C
|
|
- César Lozano Sánchez
- hace 8 años
- Vistas:
Transcripción
1 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 Reproducción permitida bajo los términos de la licencia de documentación libre GNU. Documento bajo construcción, reportar errores al correo electrónico mathtutorinfo@gmail.com
2 Contenido 1 Introducción 2 Operaciones con arreglos unidimensionales 3 Paso de arreglos a funciones 4 Arreglos bidimensionales (matrices) 5 Operaciones con arreglos bidimensionales 6 Referencias
3 Arreglos (arrays) Arreglo: concepto en programación análogo a los conceptos matemáticos de vector, matriz y tensor Arreglo unidimensional: estructura de datos formada por una colección finita de elementos homogéneos y ordenados que se que se referencian con un nombre común Homogéneos: todos los elementos son del mismo tipo de dato (int, float, etc.) Ordenados: el arreglo tiene un primer elemento, un segundo elemento, etc. Finito: el arreglo tiene un último elemento Los elementos de un arreglo se almacenan en posiciones consecutivas de memoria
4 Declaración de arreglos Declaración de un arreglo unidimensional: tipo nombre arreglo[tama~no] tipo: tipo de dato de los elementos del arreglo (int, float, etc.) nombre arreglo: identificador que representa la colección de elementos tamaño: constante entera positiva que representa la cantidad de elementos de la colección Ejemplos: double x[30]; float notas[8]; int posiciones[100]; char apellidos[15]; Los 30 elementos de x son: x[0], x[1], x[2],..., x[28], x[29]
5 Formato de inicialización de arreglos nombre arreglo[i] = valor; double y[3]; y[0] = 7; y[1] = 0.5; y[2] = ; int z[4]; z[0] = 12, z[1] = 4; z[2] = z[0] + 2*z[1]; z[3] = z[2]++; // Hace lo mismo que la asignación anterior double y[3] = {7, 0.5, ; /* Si no se precisa el tama~no del arreglo, C lo asigna dado el número de elementos */ double y[] = {7, 0.5, ; /* Si el tama~no del arreglo supera al númmero de elementos, C asigna 0.0 al resto */ double y[7] = {7, 0.5, ; char mensaje[] = "Todo bien"; char mensaje[10] = { T, o, d, o,, b, i, e, n, \O ; double mensaje[10]; mensaje[0] = T ; mensaje[0] = o ; mensaje[0] = d ;.
6 Operaciones frecuentes Recorriendo un arreglo x[i] de tamaño n: El recorrido se realiza por medio de un índice El índice puede ir desde el primero hasta el último elemento Recorrido del primero al último for (i=0; i<n; i++) { // proceso que involucra a x[i] <proceso> El índice puede ir desde el último hasta el primer elemento Recorrido del último al primero for (i=n-1; i>=0; i--) { // proceso que involucra a x[i] <proceso>
7 Ejemplo 2.1 (Notas) Escriba un programa en C que almacene en un vector (arreglo unidimensional) las notas finales de los alumnos de un curso formado por 10 estudiantes. El programa debe visualizar por pantalla las notas. Solución notas vector.c #include<stdio.h> main(){ float notas[10]; int i; // Recorrido para leer datos en el arreglo for (i=0; i<10; i++) { printf("ingrese nota = "); scanf("%f", ¬as[i]); // Recorrido para escribir datos en pantalla for (i=0; i<10; i++) { printf("nota %d = %f \n", i, notas[i]);
8 Ejemplo 2.2 (Notas) Modifique el programa del ejemplo anterior (5.1) para que muestre por pantalla el promedio del curso. Solución notas promedio.c #include<stdio.h> main(){ float notas[10], suma = 0.0, promedio; int i; // Recorrido para leer datos en el arreglo for (i=0; i<10; i++) { printf("ingrese nota = "); scanf("%f", ¬as[i]); // Recorrido para sumar las 10 notas for (i=0; i<10; i++) suma += notas[i]; promedio = suma/10.0; printf("promedio = %f", promedio);
9 Ejemplo 2.3 (Fibonacci) Escriba un programa en C que genere los primeros n términos de la sucesión de Fibonacci, los almacene en un vector y los muestre por pantalla. Solución fib vector.c #include<stdio.h> main(){ int i, n; printf("ingrese número de términos: "); scanf("%d", &n); /* Declara vector de tama~no n e inicializa los dos primeros elementos */ int fib[n]; fib[0]=0, fib[1]=1; // Almacena Fibonacci for (i=2; i<n; i++) fib[i] = fib[i-1] + fib[i-2]; // Imprime términos de la sucesión for (i=0; i<n; i++) printf(" %d \t", fib[i]);
10 Ejemplo 2.4 (Intercambiar) Escriba un programa en C que intercambie los elementos de un vector de la siguiente manera: el de la primera posición pasa a la última posición, el de la segunda a la penúltima, etc. Solución intercambia vector.c #include<stdio.h> main(){ int i, n; printf("ingrese tama~no del vector: "); scanf("%d", &n); float x[n], temp; // Escribe datos en el arreglo for (i=0; i<n; i++) { printf("elemento %d: ", i); scanf("%g", &x[i]); // continua en la columna derecha // Intercambia elementos del arreglo for (i=0; i<n/2; i++) { temp = x[i]; x[i] = x[n-i-1]; x[n-i-1] = temp; // Imprime los elementos del vector for (i=0; i<n; i++) printf(" %g \t", x[i]);
11 Ejemplo 2.5 (Intercambiar función) Escriba el programa del ejemplo anterior (2.4) utilizando funciones. Solución intercambiafun vector.c #include<stdio.h> // declaracion de la funcion intercambia void intercambia(float *a, float *b); main(){ int i, n; printf("ingrese tama~no del vector: "); scanf("%d", &n); float x[n]; // Escribe datos en el arreglo for (i=0; i<n; i++) { printf("elemento %d: ", i); scanf("%g", &x[i]); // continua en la columna derecha // Intercambia elementos del arreglo for (i=0; i<n/2; i++) intercambia(&x[i], &x[n-i-1]); // Imprime los elementos del vector for (i=0; i<n; i++) printf(" %g \t", x[i]); // declaracion de la funcion intercambia void intercambia(float *a, float *b) { float temp; temp = *a; *a = *b; *b = temp;
12 Paso de un arreglo unidimensional (vector) como parámetro Cuando un argumento (parámetro) de una función es un arreglo, el parámetro (arreglo) se pasa por referencia tipo funcion(..., tipo x[],...) { // cuerpo de la función. La forma más usual de pasar un arreglo como parámetro a una función es por medio de punteros: tipo funcion(..., tipo *x,...) { // cuerpo de la función.
13 Ejemplo 3.1 (Imprime arreglo) Escriba una función en C llamada imprimir que reciba como argumento un vector formado por 0, 1, 2,..., 9 y los muestre por pantalla. Solución pasar arreglo.c #include<stdio.h> #define n 10 // define n=10 /* declaracion de la funcion imprimir de dos maneras */ void imprimir1(int x[]); void imprimir2(int *x); main(){ int x[n], i; // Inicializa arreglo for (i=0; i<n; i++) x[i] = i; imprimir1(x); // Imprime arreglo // imprimir2(x); // continua en la columna derecha // Definición de la funcion imprimir1 void imprimir1(int x[]) { int i; for (i=0; i<n; i++) printf(" %d \t", x[i]); // Definición de la funcion imprimir2 void imprimir2(int *x) { int i; for (i=0; i<n; i++) printf(" %d \t", x[i]);
14 Ejemplo 3.2 Ejemplo 3.2 (promedio arreglo) Escriba un programa en C que calcule el promedio de los elementos de un vector de tamaño n. El programa debe constar de tres funciones, una que lea el vector (leer vector), otra que imprima el vector por pantalla (escribir vector) y otra que calcule el promedio (promedio). Solución Datos de entrada: n: tamaño del vector x[n]: vector Funciones: void leer vector(double x[], int n) void escribir vector(double x[], int n) double promedio(double x[], int n)
15 promedio arreglo.c #include<stdio.h> // Declaracion de las funciones void leer vector(double x[], int n); void escribir vector(double x[], int n); double promedio(double x[], int n); main(){ int n; printf("ingrese número de elementos: "); scanf("%d", &n); double x[n]; leer vector(x, n); escribir vector(x, n); printf("\npromedio = %lf", promedio(x,n)); // Definición de las funciones void escribir vector(double x[], int n) { int i; for (i=0; i<n; i++) printf(" %5.8lf \t", x[i]); double promedio(double x[], int n) { int i; double suma = 0.0; for (i=0; i<n; i++) suma += x[i]; return suma/n; void leer vector(double x[], int n) { int i; for (i=0; i<n; i++) { printf("x( %d) = ", i+1); scanf("%lf", &x[i]); // continua en la columna derecha
16 Ejemplo 3.3 Ejemplo 3.3 (Busca elemento) Escriba una función en C que determine si un elemento dado está en un vector. Solución Datos de entrada: n: tamaño del vector x[n]: vector v: elemento a buscar Funciones: void leer vector(double x[], int n) void escribir vector(double x[], int n) int pertenece(double x[], double v, int n)
17 buscar.c #include<stdio.h> // Declaracion de las funciones void leer vector(double x[], int n); void escribir vector(double x[], int n); int pertenece(double v, double x[], int n); main(){ int n; printf("ingrese número de elementos: "); scanf("%d", &n); double x[n], v; leer vector(x, n); escribir vector(x, n); printf("\ningrese elemento a buscar: "); scanf("%lf", &v); if (pertenece(v,x,n)) printf(" %lf sí está", v); else printf(" %lf no está", v); // continua en la columna derecha // Definición de las funciones void leer vector(double x[], int n) { int i; for (i=0; i<n; i++) { printf("x( %d) = ", i+1); scanf("%lf", &x[i]); void escribir vector(double x[], int n) { int i; for (i=0; i<n; i++) printf(" %5.8lf \t", x[i]); int pertenece(double v, double x[], int n) { int s = 0, k = 0; while (s==0 && k<n) { if (v==x[k]) s=1; k++; return s;
18 Arreglos bidimensionales (matrices) Arreglo bidimensional: concepto en programación análogo al concepto matemático de matriz La definición de arreglo bidimensional [] puede hacerse desde dos enfoques: Enfoque recursivo: se trata de un arreglo unidimensional en el que cada elemento es a su vez un arreglo unidimensional Enfoque directo: estructura de datos formada por una colección finita de elementos homogéneos, ordenados cada uno de ellos en dos dimensiones y referenciados con un nombre común El acceso a un elemento del arreglo bidimensional se realiza mediante el nombre del arreglo (identificador) y un par de índices que indican la posición del elemento
19 Representación gráfica de un arreglo bidimensional Arreglo bidimensional con m filas (horizontales) y n columnas (verticales) : elemento [0][0] : elemento [0][2].... : elemento [1][n-2] : elemento [2][1] : elemento [i][j] : elemento [m-1][2] : elemento [m-1][n-1]
20 Declaración de arreglos Declaración de un arreglo bidimensional: tipo nombre arreglo[filas][columnas] tipo: tipo de dato de los elementos del arreglo (int, float, etc.) nombre arreglo: identificador que representa la colección de elementos filas: constante entera positiva que representa la cantidad de filas columnas: constante entera positiva que representa la cantidad de columnas Ejemplos: double a[3][4]; float matriz[12][8]; int pos[18][24]; char lista[7][8]; Los 12 elementos de a son: a[0][0], a[0][1], x[0][2],..., a[2][2], a[2][3]
21 Formato de inicialización de arreglos bidimensionales nombre arreglo[i][j] = valor; double m[2][3]; m[0][0] = 1.1; m[0][1] = 1.2; m[0][2] = 1.3; m[1][0] = 1.4; m[1][1] = 1.5; m[1][2] = 1.6; // Hace lo mismo que la asignación anterior double m[2][3] = {1.1, 1.2, 1.3, 1.4, 1.5, 1.6 ; /* En el siguiente ejemplo se asignan ceros hasta completar las filas */ double m[][3] = {1.1, 1.2, 1.3, 1.4 double m[2][3]; m[0][0] = 1.1; m[0][1] = 1.2; m[0][2] = 1.3; m[1][0] = 1.4; m[1][1] = 0.0; m[1][2] = 0.0; // Hace lo mismo que la asignación anterior double m[][3] = {1.1, 1.2, 1.3, 1.4, 1.5, 1.6 ; /* Las siguientes inicializaciones son INCORRECTAS */ double x[][] = {1.1, 1.2, 1.3, 1.4 double y[2][] = {1.1, 1.2, 1.3, 1.4
22 Operaciones frecuentes Procesar fila i Procesa fila for (j=0; j<n; j++) { // proceso que involucra a a[i][j] <proceso a[i][j]> Procesar columna j: Procesa columna for (i=0; i<n; i++) { // proceso que involucra a a[i][j] <proceso a[i][j]>
23 Operaciones frecuentes Recorrido de un arreglo a[i][j] de tamaño m n: Recorrido por filas for (i=0; i<n; i++) { for (j=0; j<n; j++) { // proceso que involucra a a[i][j] <proceso a[i][j]> Recorrido por columnas for (j=0; j<n; j++) { for (i=0; i<n; i++) { // proceso que involucra a a[i][j] <proceso a[i][j]>
24 Ejemplo 5.1 Ejemplo 5.1 (Cine) Escriba un programa en C que almacene en una matriz (arreglo bidimensional) el número de personas que ingresan a una sala de cine X durante cada uno de los días de la semana. La matriz debe constar de dos columnas, la primera para los días de la semana y la segunda para el número de personas, y siete filas para cada uno de los días de la semana. El programa debe calcular el promedio de personas que ingresan a la sala. Solución Matriz: int asistencia[2][7] asistencia[i][1]: número de personas que asisten el día i Salida: promedio = (asistencia[0][1] + + asistencia[6][1])/7
25 cine.c #include<stdio.h> main(){ int i, j, total = 0, asistencia[7][2]; float promedio; // Inicializa arreglo a cero for (i=0; i<7; i++) { for (j=0; j<2; j++) { asistencia[i][j] = 0; // Muestra arreglo inicializado a cero for (i=0; i<7; i++) { for (j=0; j<2; j++) { printf(" %d ", asistencia[i][j]); printf("\n"); // cambia de fila // continua en la columna derecha /* Almacena los días en la primera columna */ for (i=0; i<7; i++) asistencia[i][0] = i+1; /* Almacena el número de personas en la segunda columna */ for (i=0; i<2; i++) { printf("personas día %d: ", i+1); scanf("%d", &asistencia[i][1]); // Muestra información del arreglo for (i=0; i<7; i++) { printf("el día %d asisten %d \n", asistencia[i][0], asistencia[i][1]); // Cálculo del promedio for (i=0; i<7; i++) total += asistencia[i][1]; promedio = (float)total/7.0; printf("promedio = %f", promedio);
26 Bibliografía I O. Cairó Metodología de la programación Segunda edición. Alfaomega Grupo Editor, S.A., 2005 M.A. Criado Programación en lenguajes estructurados Alfaomega Grupo Editor, S.A. de C.V. Primera Edición, 2006 B.W. Kernighan, D. Ritchie The C Programming Language Prentice Hall, 2th Edition, 1988 S. Lipschutz Schaum s Outline of Essential Computer Mathematics McGraw-Hill, 1th edition, 1982 H.M. Mora Escobar Introducción a C y a métodos numéricos Universidad Nacional de Colombia (Sede Bogotá), 2004
27 Bibliografía II M.J. Páez C y C ++ de afán Universidad de Antioquia, 2004 R. Séroul Programming for Mathematicians Springer, 2000 E. Scheinerman C ++ for Mathematicians: An Introduction for Students and Professionals Taylor & Francis Group, LLC, 2006 A. Shen Algorithms and Programming Springer Undergraduate Texts in Mathematics and Technology, 2010 P. Tymann Schaum s Outline of Principles of Computer Science McGraw-Hill, 1th edition, 2008
Introducción a los Computadores Funciones y recursividad en C
Introducción a los Computadores Funciones y recursividad en C Alejandro Piedrahita H. Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia Copyleft 2013. Reproducción
Más detallesIntroducción a los Computadores (CNM-130) Estructuras algorítmicas repetitivas
Introducción a los Computadores (CNM-130) Estructuras algorítmicas repetitivas Alejandro Piedrahita H. Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia Copyleft
Más detallesIntroducción a los Computadores Estructuras de control repetitivas en C
Introducción a los Computadores Estructuras de control repetitivas en C Alejandro Piedrahita H. Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia Copyleft 2013.
Más detallesIntroducción a los Computadores Estructuras de control selectivas en C
Introducción a los Computadores Estructuras de control selectivas en C Alejandro Piedrahita H. Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia Copyleft 2013.
Más detallesVectores. 27/05/05 Programación Digital I 1
Vectores Material Original: Prof. Flor Narciso Modificaciones: Prof. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Programación
Más detallesIntroducción a los Computadores Estructuras de control selectivas en C
Introducción a los Computadores Estructuras de control selectivas en C CNM-130 Departamento de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia Copyleft «2009. Reproducción
Más detallesIntroducción a los Computadores (CNM-130) Estructuras selectivas en Matlab
Introducción a los Computadores (CNM-130) Estructuras selectivas en Matlab Alejandro Piedrahita H. Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia Copyleft 2013.
Más detallesIntroducción al tipo de dato ARRAY
CONTENIDOS. Introducción al tipo de dato ARRAY. Definición, Características, Declaración, Acceso e Inicialización.. Arrays multidimensionales Definición, Declaración, Acceso e Inicialización. Introducción
Más detalles1. Manejo de memoria estática 2. Manejo de memoria dinámica
1. Manejo de memoria estática 2. Manejo de memoria dinámica *La administración de memoria de una computadora es una tarea fundamental debido a que la cantidad de memoria es limitada. *El sistema operativo
Más detallesArrays y Cadenas en C
Arrays y Cadenas en C Los arrays son variables estructuradas, donde cada elemento se almacena de forma consecutiva en memoria. Las cadenas de caracteres son declaradas en C como arrays de caracteres y
Más detallesIntroducción a los Computadores (CNM-130) Estructuras algorítmicas selectivas
Introducción a los Computadores (CNM-130) Estructuras algorítmicas selectivas Alejandro Piedrahita H. Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia Copyleft
Más detallesTema 9. Vectores y Matrices
Tema 9. Vectores y Matrices OBJETIVO En temas anteriores hemos declarado variables simples de tipo int, float, o de cualquier otro tipo simple. A menudo necesitaremos declarar una colección de variables,
Más detallesHoja de problemas Estructuras de Control
Departamento de Estadística, I.O. y Computación Ingeniería Técnica Industrial - Electrónica Industrial Fundamentos de Informática Hoja de problemas Estructuras de Control 1. Cuál es el efecto de las siguientes
Más detalles11. 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 detallesTema: Arreglos de Objetos en C++.
Programación II. Guía 5 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Arreglos de Objetos en C++. Objetivos Específicos Describir la implementación de arreglos de Objetos.
Más detallesTema 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 detallesCurso 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 detallesPRACTICA 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 detallesARREGLOS 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 detallesTema: FUNCIONES, PROCEDIMIENTOS Y RECURSIVIDAD.
Programación I, Guía 6 1 Facultad : Ingeniería Escuela : Computación Asignatura: Programación I Tema: FUNCIONES, PROCEDIMIENTOS Y RECURSIVIDAD. Objetivos Utilizar la sintaxis de las funciones definidas
Más detallesISTP 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 detallesSegundo 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 detallesResumen Lenguaje Java
Resumen Lenguaje Java Métodos (Subprogramas) Tipos de Métodos: con resultado y tipo void Definición 1. Método con resultado, retorna un solo valor, equivalente a los subprogramas tipo función tipo_de_dato_a_retornar
Más detallesESTRUCTURA 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 detallesRepaso sobre lectura de datos desde la línea de comandos, manejo de memoria dinámica e introducción a la librería GSL
Clase No. 5: Repaso sobre lectura de datos desde la línea de comandos, manejo de memoria dinámica e introducción a la librería GSL MAT 251 Dr. Alonso Ramírez Manzanares CIMAT, A.C. e-mail: alram@ cimat.mx
Más detallesAPUNTES JAVA ARRAYS (ARREGLOS) Un arreglo es un grupo de posiciones de memoria contiguas. Todas las cuales tienen el mismo nombre y el mismo tipo.
APUNTES JAVA ARRAYS (ARREGLOS) Los arreglos son estructuras de datos que consisten en elementos de información del mismo tipo relacionados entre sí. Los arreglos son entidades estáticas en cuanto a que
Más detallesArreglos. // 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 detallesContenido. 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 detallesModulo 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 detallesCapí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 detallesFundamentos de la Programación
Fundamentos de la Programación El Software Las operaciones que debe realizar el hardware son especificadas con una lista de instrucciones, llamadas programas o software. Dos grandes grupos de software
Más detallesGUÍA DE TRABAJO N 2 ARREGLOS EN C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 8. Tema: ARREGLOS (ARRAYS) LENGUAJE C#
Página 1 de 8 Tema: ARREGLOS (ARRAYS) LENGUAJE C# Objetivo: Conocer el concepto, clasificación e implementación de los arreglos en el lenguaje de programación C# en un proyecto tipo consola. INTRODUCCIÓN
Más detallesIntroducció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 detallesResolución de Problemas
Resolución de Problemas con algoritmos Colaboratorio de Computación Avanzada (CNCA) 2015 1 / 27 Contenidos 1 Introducción 2 Elementos de algoritmos Elementos Variables Estructuras de Control Condicionales
Más detallesTIPOS 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 detallesIntroduccion 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 detallesTEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 2 CADENAS O VECTORES DE CARACTERES 6 3 PASO DE CADENAS Y ARRAYS A FUNCIONES 8
TEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 1.1 VECTORES O ARRAYS UNIDIMENSIONALES 2 1.2 ARRAYS MULTIDIMENSIONALES 3 1.3 INICIALIZACIÓN DE ARRAYS 4 1.3.1 INICIALIZACIÓN DE ARRAYS SIN
Más detallesLenguaje C Funciones. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia
Lenguaje C Funciones Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Qué es una función o rutina/subrutina? Se presenta como un subalgoritmo
Más detallesLENGUAJE. 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 detallesEntorno de Programación Visual Studio 6
Entorno de Programación Visual Studio 6 Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Programación en C 1 Proceso de Programación Edición
Más detallesExamen 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 detallesMétodos Numéricos utilizando Scilab
UNIVERSIDAD NACIONAL DE TUCUMÁN Facultad de Ciencias Exactas y Tecnología Departamento de Electricidad, Electrónica y Computación Carrera de Ingeniería en Computación Métodos Numéricos () Métodos Numéricos
Más detallesVectores 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 detallespromedio = nint((notas(1) + notas(2) + notas(3) + & notas(4) + notas(5) + notas(6)) / 6.0) print *, 'Su promedio es', promedio
Arreglos Un arreglo es un tipo de datos que contiene varios elementos de un mismo tipo. Cada elemento tiene asociado un índice, y puede ser tratado como si fuera una variable. La cantidad de elementos
Más detallesEl 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 detallesVectores 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 detallesInformá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 detallesINFORMÁ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 detallesEJEMPLOS 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 detallesProgramació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 detallesFUNDAMENTOS DE INFORMÁTICA 1º Ingeniería Industrial
FUNDAMENTOS DE INFORMÁTICA º PRÁCTICA 4: Funciones y vectores CURSO 5/6 Área de Ingeniería de Sistemas y Automática ISA-UMH R-2-FI4v. FUNDAMENTOS DE INFORMÁTICA PRÁCTICA 4: Funciones y vectores curso 25-26
Más detallesPreliminares. 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 detallesEntrada 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 detallesINTRODUCCIÓN AL TIPO COMPUESTO CADENA CONTENIDOS
CONTENIDOS 1. Introducción a las cadenas 2. Definición 3. Declaración de cadenas 4. Inicialización de cadenas 5. Escritura y Lectura de datos tipo cadena 6. Funciones de manipulación de cadenas 7. Arrays
Más detallesProgramación Avanzada para Sistemas de Telecomunicación Arrays
Programación Avanzada para Sistemas de Telecomunicación Arrays Juan Carlos Cruellas cruellas@ac.upc.es Objetos y clases Introducción. Vectores de datos primitivos. Vectores de objetos. Introducción En
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!
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 detallesPracticas de Programación Estructurada. Clave: 12125
Universidad Autónoma de Baja California Facultad de Ingenieria Arquitectura y Diseño Practicas de Programación Estructurada Clave: 12125 Ensenada Baja California, Agosto 2013 PRACTICA 0 1. Instalacion
Más detallesRepública Bolivariana de Venezuela Aldea Universitaria Liceo Fray Pedro de Agreda. Lenguaje C++ Contadores y Acumuladores
República Bolivariana de Venezuela Aldea Universitaria Liceo Fray Pedro de Agreda Prof. Elías Cisneros. Lenguaje C++ Contadores y Acumuladores Usted es libre de: * Copiar, distribuir y comunicar públicamente
Más detalles#include <stdio.h> /* Factorial de un número - versión 1- */
Ejemplo 1: Programa que calcula el factorial de 'n' números introducidos desde teclado. Primera versión: /* Factorial de un número - versión 1- */ long int factorial (int x) /*definición de función*/ int
Más detallesPunteros. Definición Un puntero es un dato que contiene una dirección de memoria.
Punteros Definición Un puntero es un dato que contiene una dirección de memoria. NOTA: Existe una dirección especial que se representa por medio de la constante NULL (definida en ) y se emplea
Más detallesSe guardan en archivos con extencion c y los cabezales con extension h
Se guardan en archivos con extencion c y los cabezales con extension h Tipos de Variables: Tipo Tamaño(bytes) Limite inferior Limite superior char 1 -- -- unsigned char 1 0 255 short int 2-32768 +32767
Más detalles1 ELEMENTOS BASICOS DEL LENGUAJE
1 ELEMENTOS SICOS DEL LENGUJE Contenido: Variables su declaracion y asignacion Caracteres en java Secuencias de escape y comentarios Tipos de datos Operadores aritméticos, relacionales y lógicos Entrada
Más detallesEl 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 detallesEl concepto de función en programación se fundamenta en el concepto de función matemática 1
FUNCIONES Y PROCEDIMIENTOS OBJETIVOS Aprender a resolver problemas grandes y complejos dividiendo un problema en subproblemas a través del uso de procedimientos y funciones. Distinguir entre parámetros
Más detallesTaller de Programación I. Tema 04: Arreglos y Matrices en Java
INACAP Universidad Tecnológica de Chile Sede Santiago Centro Taller de Programación I Curso Java J2SE Tema 04: Arreglos y Matrices en Java Ing. Manuel López Ramos (versión 2) Parte I Arreglos en Java Arreglos
Más detallesGUIA DE LABORATORIO # 13 Arreglos unidimensionales y bidimensionales
OBJETIVO GUIA DE LABORATORIO # 13 Arreglos unidimensionales y bidimensionales Entender el concepto y funcionamiento de los arreglos Realizar programas en C, haciendo uso de arreglos, a través de su recorrido
Más detallesProgramación ( ): Estructuras algorítmicas selectivas
Programación (314 202): Estructuras algorítmicas selectivas Alejandro Piedrahita H. Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia Copyleft 2013. Reproducción
Más detallesUn puntero no es más que una variable estática cuyo contenido es una dirección de memoria.
Los punteros en C 1 Introducción Cómo se organiza la memoria asociada a un programa? Como una colección de posiciones de memoria consecutivas. En ellas se almacenan los distintos tipos de datos, que ocupan,
Más detallesvoid int int for void int int for void int int for for void int int for int int
******************************************************** PROGRAMACION APLICADA A LA INGENIERIA CIVIL OOCC GUIA Nº3 Ayudante: Rodrigo Torres Aguirre/2009 Compilador utilizado: Dev-C++ versión 4.9.9.2 *********************************************************
Más detallesEscuela Politécnica Superior de Ingeniería Departamento de Ingeniería Informática
Escuela Politécnica Superior de Ingeniería Departamento de Ingeniería Informática Fundamentos de la informática 2. Algoritmos, diagramas de flujo y pseudocódigo Contenido Algoritmos Diagramas de flujo
Más detallesObjetivos. 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 detallesContenidos. 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 detallesEstructura 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 detallesTema 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 detallesUNIVERSIDAD DE ESPECIALIDADES ESPÍRITU SANTO FACULTAD DE INGENIERIA DE SISTEMAS Y TELECOMUNICACIONES SYLLABUS
UNIVERSIDAD DE ESPECIALIDADES ESPÍRITU SANTO FACULTAD DE INGENIERIA DE SISTEMAS Y TELECOMUNICACIONES SYLLABUS FOR DAC 11 VER 11 05 08 DATOS GENERALES MATERIA Laboratorio de Fundamentos de Programación
Más detallesLenguaje 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 detallesFormato 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 detallesTema 2. Software. Informática (1º Ingeniería Civil) jcarmur@unex.es
Tema 2. Software Informática (1º Ingeniería Civil) Curso 2011/2012 Javier Carmona Murillo jcarmur@unex.es Índice Introducción. Programas e instrucciones. Tipos y estructuras de datos. Algoritmos. Proceso
Más detallesUNIVERSIDAD 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 detallesInformática FACULTAD DE FÍSICAS
EJERCICIOS RESUELTOS EN CLASE DE TEORÍA 1. Realizar un programa que pida 10 números enteros y calcule la media de dichos valores. Realizar una función/procedimiento para rellenar los valores en un vector
Más detallesInformática Aplicada I
Informática Aplicada I Dr. Alonso Ramirez Manzanares CIMAT e-mail: alram@cimat.mx web: http://www.cimat.mx/~alram/info_apli1/ Profesor Alonso Ramirez Manzanares, Ciencias de la computación, computo matemático.
Más detallesGL-PCS2201-L05M FUNCIONES Y LA ESTRUCTURA DEL PROGRAMA EN LENGUAJE C
GL-PCS2201-L05M FUNCIONES Y LA ESTRUCTURA DEL PROGRAMA EN LENGUAJE C CARRERA: 441402 INGENIERÍA DE EJECUCIÓN EN ELECTRICIDAD Y ELECTRÓNICA 444803 TÉCNICO EN ELECTRICIDAD Y ELECTRÓNICA ASIGNATURA: PCS2201
Más detallesSOLUCION 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 detallesUna 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 detallesTemario detallado. Conceptos generales de lenguajes y compiladores. Proceso de compilación de un programa en C++ bajo Code::Blocks
Temario detallado Programación básica en C++ Conceptos generales de lenguajes y compiladores Proceso de compilación de un programa en C++ bajo Code::Blocks Estructura básica de un programa en C++ Análisis
Más detallesEjercicio 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 detallesClases y Objetos. Informática II Ingeniería Electrónica
Clases y Objetos Informática II Ingeniería Electrónica Los Tipos de Datos Hasta ahora, en un programa podemos usar para representar variables a: Tipos fundamentales : enteros (int), caracteres (char),
Más detalles1. Ejemplo de clase : La clase Cuenta 2. Uso de la clase Cuenta. 3. Métodos y objetos receptores de mensajes (Importante)
1. : La clase Cuenta. Uso de la clase Cuenta 3. Métodos y objetos receptores de mensajes (Importante) 1 Una clase para cuentas de un banco Vamos a modelar con una clase, un nuevo tipo de datos, donde los
Más detallesAprendiendo 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 detallesUNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS COORDINACION DE COMPUTACIÓN PROYECTO DE CÁTEDRA. MATERIA: Introducción a la Programación
UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS COORDINACION DE COMPUTACIÓN CICLO 01-2015 PROYECTO DE CÁTEDRA MATERIA: Introducción a la Programación Indicaciones generales: El proyecto a continuación,
Más detallesOrganización de Computadoras
Organización de Computadoras Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Segundo Cuatrimestre de 2015 Proyecto N 1 Programación en Lenguaje C El objetivo principal
Más detallesExamen escrito de Programación 1
Examen escrito de Programación 1 Escuela de Ingeniería y Arquitectura Departamento de Informática e Ingeniería de Sistemas 2 de septiembre de 2015 Se debe disponer sobre la mesa en lugar visible un documento
Más detallesExamen 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 detallesEjemplos 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 detallesObjetivo El alumno conocerá y aplicará los conceptos de arreglo y estructura en la realización de programas que resuelvan problemas de tipo numérico.
Universidad Nacional Autónoma de México Facultad de Ingeniería ARREGLOS Y ESTRUCTURAS Objetivo El alumno conocerá y aplicará los conceptos de arreglo y estructura en la realización de programas que resuelvan
Más detallesLos tipos de datos que con mayor frecuencia se utilizan en Informática son:
Los tipos de datos que con mayor frecuencia se utilizan en Informática son: Datos Simples ó Básicos Numéricos No Numéricos Variables sin Subíndices: Numéricas Alfanuméricas Char Lógicas En general, los
Más detallesIntroducción a los Computadores (CNM-130) Algoritmos computacionales
Introducción a los Computadores (CNM-130) Algoritmos computacionales Alejandro Piedrahita H. Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia Copyleft 2013. Reproducción
Más detalles