Você está na página 1de 25

MANEJO DE ARRAYS EN C

MENU DEL DIA


Introduccin a los Arrays. Ejemplo Arrays. Aspectos claves sobre los arrays. Declaracin de arrays en C. Inicializacin de arrays durante la declaracin. Acceso a los elementos de un array. Arreglos multidimensionales. Inicializacin de arreglos de dos dimensiones. Inicializacin de arreglos de tres dimensiones. Uso de ciclos para barrer arreglos multidimensionales Ejercicio. Fin de la clase

INTRODUCCION A LOS ARRAYS


Definicin: Un array es una coleccin de variables del mismo tipo de datos con un mismo nombre. Los arrays son un ejemplo de una variable estructurada en la cual:
Hay un numero de piezas de datos contenidos en el mismo nombre. Hay un mtodo ordenado para la extraccin de datos individuales del array

EJEMPLO ARRAYS
Eso pa que?
Problema: Supongamos el seor Burns le solicita a usted un programa que le permita llevar un registro de la identificacin de cada uno de los empleados de la plata nuclear de Springfield, Cmo lo hara?

Solucin 1: Crear una variable especifica por empleado en la cual se almacene la identificacin de cada uno de los empleados.

EJEMPLO ARRAYS
Problema solucin anterior: El problema se vuelve mas difcil a medida que el numero de empleados aumenta, pues implicara la creacin de mas variables individuales (id5, id6, )

EJEMPLO ARRAYS
Solucin al problema anterior: En los arrays se encuentra la respuesta. Pues un array es como una caja para guardar elementos o como un archivador. Utiliza un sistema de indexacin para encontrar el valor de cada una de las variables almacenadas en su interior.

ASPECTOS CLAVES SOBRE LOS ARRAYS


Notacin: Un array as como las variables ordinarias debe ser declarado antes de ser usado. Cada pieza de dato en un array es llamada elemento. La sintaxis para un elemento de un array a es a[i], donde i es llamado ndice del elemento del array.

idEmpleados es un arreglo de 100 elementos.

...

INICIALIZACION DE ARRAYS DURANTE LA DECLARACION


Antes de usar un array este debe ser declarado
Durante la declaracin, localizaciones consecutivas de memoria son reservadas para el array y todos sus elementos. Despus de la declaracin no se puede asumir que todos los elementos han sido inicializados a 0, los valores inciales pueden ser basura.

Sintaxis:

n es el numero de elementos en el array

INICIALIZACION DE ARRAYS DURANTE LA DECLARACION


Como en la declaracin de variables ordinarias, es posible inicializar arrays durante su declaracin, lo cual se hace por medio de una lista de inicializacin usando llaves ({}).

Algunas reglas al inicializar arrays Si la lista de los elementos es mas corta que el numero de elementos del array, el resto de los elementos ser inicializado a cero. Si un array esttico no es inicializado en la declaracin manualmente, sus elementos son inicializados automticamente a cero. Si un array es declarado sin una especificacin de tamao, su tamao es igual a la longitud de la lista de inicializacin.

INICIALIZACION DE ARRAYS DURANTE LA DECLARACION


Algunas reglas al inicializar arrays (2) Es posible inicializar un elemento especifico del array, para ello, dentro de la lista de inicializacin se puede colocar el ndice del elemento del array que se va inicializar entre corchetes ([]) seguido del operador de asignacin (=) y del valor a asignar en dicha posicin.

Si se define un array sin especificar su longitud array, usando dentro de la lista indexada un ndice [i] el tamao del array ser i + 1.

ACCESO A LOS ELEMENTOS DE UN ARRAY


Reglas al acceder a los arrays El operador [], proporciona una manera fcil de acceder a un elemento del array. Por ejemplo si se tiene un array llamado a y una variable entera llamada i, entonces la expresin a[i] designa el elemento del array con ndice i. Si un arreglo tiene N elementos, el valor del subndice (lo que esta dentro del los corchetes) va desde 0 hasta N-1.

Un error comn en programacin se suele dar cuando se toma como ndice un valor no valido (out-ofbounds array indexing). Esto es legal pero puede dar un comportamiento impredecible.

ACCESO A LOS ELEMENTOS DE UN ARRAY


LECTURA
nombreVariable = nombreArray[indice]

ESCRITURA
nombreArray[indice] = valor

ACCESO A LOS ELEMENTOS DE UN ARRAY


A menudo se emplean los ciclos para el acceso a los elementos de un array. Entre las aplicaciones estn: inicializacin y acceso (para lectura o escritura) a los arrays.

ACCESO A LOS ELEMENTOS DE UN ARRAY


Ejemplos 1. Escriba un programa que solicite al usuario el ingreso de un array de 5 elementos enteros y que despliegue luego su contenido. 2. Escriba un programa que sume los elementos de un vector dado. 3. Escriba un programa que busque el elemento mas grande de un array. 4. Escriba un programa que dado un array genere otro en orden inverso. 5. Escriba un programa que organice un array en orden ascendente y en orden descendente segn el usuario lo solicite. 6. Dado un el vector {1,5,6,7,8} escribir un programa que genere otro vector con la suma del contenido de todo los elementos anteriores al ndice actual: {1,6,12,19,27}.

ACCESO A LOS ELEMENTOS DE UN ARRAY


Escriba un programa que solicite al usuario el ingreso de un array de 5 elementos enteros y que despliegue luego su contenido.

ACCESO A LOS ELEMENTOS DE UN ARRAY


Escriba un programa que sume los elementos de un vector dado.

ACCESO A LOS ELEMENTOS DE UN ARRAY


Escriba un programa que busque el elemento mas grande de un array.

ACCESO A LOS ELEMENTOS DE UN ARRAY


Escriba un programa que busque el elemento mas grande de un array.

ARREGLOS MULTIDIMENSIONALES
Los arreglos multidimensionales tienen dos o mas ndices los cuales son usados para especificar un elemento particular en el array. La declaracin de un array multidimensional es similar a la de un array de una dimensin.

INICIALIZACION DE ARREGLOS DE DOS DIMENSIONES


Este procedimiento es totalmente anlogo al usado para la inicializacin de arreglos en una dimensin. Inicializacin del array elemento por elemento.

Como en el caso de los vectores, si hay mas pocos valores de inicializacin que elementos del array, el resto ser inicializado a 0 . Esta es una forma alternativa que hace la inicializacin mas clara.

INICIALIZACION DE ARREGLOS DE DOS DIMENSIONES

INICIALIZACION DE ARREGLOS DE TRES DIMENSIONES


La inicializacin para arreglos de tres dimensiones es similar, no olvidar que hay que tener en cuenta el ndice adicional.

USO DE CICLOS PARA BARRER ARREGLOS MULTIDIMENSIONALES


Para poder barrer arreglos de mas de una dimensin se hace necesario el uso de ciclos anidados Entre mas dimensiones tenga el array mas ciclos anidados abran.

1 2 2

3 1 2

3 3 1

EJERCICIO
Los resultados de las ultimas elecciones a alcalde en el pueblo x han sido los siguientes:

Distrito 1

Candidato A
194

Candidato B
48

Candidato C
206

Candidato D
45

2 3
4 5

180
221 432 820

20
90 51 61

320
140 821 946

16
20 14 18

Escribir un programa que haga las siguientes tareas: a. Imprimir la tabla anterior con cabeceras incluidas. b. Calculas e imprimir el numero total de votos recibidos por cada candidato y el porcentaje total de votos emitidos. As mismo, visualizar el candidato mas votado. c. Si algn candidato recibe mas del 50% de los votos, el programa imprimir un mensaje declarndole ganador. d. Si algn candidato recibe menos del 50% de los votos, el programa debe imprimir el nombre de los dos candidatos mas votados que sern los que pasen a la segunda ronda de las elecciones.

FIN DE LA CLASE

Você também pode gostar