Vous êtes sur la page 1sur 15

ARREGLOS Y MATRICES

Ingeniera

ARREGLOS
ARREGLOS Un Arreglo es una estructura de datos en la que variables del mismo tipo se identifican bajo un mismo nombre pero distinguindolas por medio de ndices. De esta manera resulta ms cmodo y comprensible hacer las manipulaciones necesarias. VECTORES Un vector es un arreglo de una sola dimensin, para indicar a qu elemento nos referimos, se necesita especificar un slo nmero o ndice, que corresponde a la posicin relativa de dicho elemento dentro del arreglo.

Definicin de Arreglos
tipo nombre_de_variable [rango]; donde: tipo puede ser cualquier tipo de dato (entero, real, cadena, etc). nombre_de_variable es el nombre del arreglo. rango especifica el nmero de elementos del arreglo. Se accede a los elementos del arreglo por medio de ndices. En los lenguajes de programacin todos los arreglos empiezan por 0 (cero); esto quiere decir que si se quiere acceder al primer elemento de un arreglo se utiliza 0 para el ndice. Para asignar un valor a un elemento del arreglo, se coloca el arreglo del lado izquierdo de la asignacin:

EJEMPLO: El siguiente diagrama de Nassi realiza la lectura de 10 datos y calcula la suma de los mismos:
Inicio Entero numeros[10] Entero i,suma=0 Para i=1 hasta 10 con incremento 1 hacer Escriba INGRESE un valor entero Leer numeros[i]) suma = suma + numeros[i] Fin para Escribir VECTOR ORIGINAL Para i=1 hasta 10 con incremento 1 hacer Escribir numeros[i]) Fin para Escribir LA SUMA DEL VECTOR ES : , suma); Fin

La declaracin Entero numeros[10];

instruye al compilador para que reserve una cantidad de memoria suficiente para almacenar 10 valores enteras y referirse a esa memoria a travs del identificador numeros.

Dado que el nmero de elementos en un arreglo suele ser utilizado en distintos lugares de un programa, es buen estilo de programacin el referenciarlo a travs de una constante simblica: Constante N=10 Entero Arreglo[N] Los elementos individuales del arreglo se comienza a numerar a partir del elemento 0, asi, Array[0] individualiza al primer elemento y Array[9] al ltimo.

Inicializacin de arreglos

La inicializacin de un arreglo puede realizarse a travs de una lista, si la lista es mas corta que el numero de elementos en el arreglo, el resto de los elementos se inicializan a 0. Ej.: real a[5] = {0.1, 1.2, 2.3, 3.4, 4.5}; entero b[100] = {1,2,3}; /* los 97 restantes sern 0 */

Ejemplo: Calcular y guardar los cuadrados de los primeros 100 nmeros naturales, es decir, de 1 a 100.
entero cuadrado[100]; int i; /* variable de indice para referenciar arreglo */; int k; /* Calcula el cuadrado */ Para i=0 hasta 99 con incremento 1 hacer k=i+1 cuadrado[i] = k*k fin para Escribir Mostrar el arreglo Para i=0 hasta 99 con incremento 1 hacer Escribir cuadrado[i] Fin Para

Matrices
Los lenguajes de programacion permiten arreglos con ms de una dimensin. El formato general es: Tipo nombre [ tam1 ][ tam2 ] ... [ tamN]; Por ejemplo un arreglo de enteros bidimensionales de 50 filas por 50 columnas, se escribir como: entero tabladenums[50][50];

Observe que para declarar cada dimensin lleva sus propios corchetes. Para acceder los elementos se procede de forma similar al ejemplo del arreglo unidimensional, esto es,

tabladenums[2][3] = 15 /* Asigna el valor 15 al elemento de la 3a fila y la 4a columna*/ num = tabladenums[25][16] /* Asigna a la variable entero num el valor que se encuentra en el arreglo bidimensional tabladenums de la fila 25, columna 16

Ejemplo de Matrices
entero num[3][4] int t,i Para t=0 hasta 2 con incremento 1

Para i=0 hasta 3 con incremento 1 hacer


num[t][i]=(t*4)+i*1 Fin para /* termina ciclo de I */ Fin para /* termina ciclo de t */ Escribir El arreglo Num contiene

Para t=0 hasta 2 con incremento 1 hacer


Para i=0 hasta 3 con incremento 1 hacer Escribir num[t][i] Fin para /* termina ciclo de I */ Fin para /* termina ciclo de t */ }

Nmeros aleatorios
Considerando que los arreglos pueden ser muy grandes y que el ingreso de datos puede ser tedioso, existen sentencias que permiten generar estos valores automticamente. Esta instruccin se denomina random y tiene el siguiente formato:

Random(limite)
Donde lmite entrega un valor comprendido entre 0 y lmite. Ejemplo: Valor=Random(10) la variable Valor puede contener valores entre 0 y 10 dado=Random(5)+1

La variable dado contendr valores entre 1 y 6, porque el lmite 5 de la sentencia random, puede generar valores entre 0 y 5 + 1

Ejercicio: Desarrollar un algoritmo que permita crear un arreglo de nombre kino de longitud 15 con valores aleatorios entre 1 y 41

entero kino[15] Entero i

Para i=0 hasta 14 con incremento 1 hacer


kino[i]=random(40)+1 Fin para

Escribir Mostrar Ns del kino


Para i=0 hasta 14 con incremento 1 hacer Escribir kino[i]

Fin para

Sintetizando
Como se mencion anteriormente, la inicializacin de arreglos, debe seguir el siguiente formato: tipo nombre_arr[ tam1 ][ tam2 ] ... [ tamN] = {lista-valores}; Por ejemplo:

int i[10] = {1,2,3,4,5,6,7,8,9,10}; int num[3][4]={0,1,2,3,4,5,6,7,8,9,10,11};

Ejercicios Propuestos
1) 2)

3)

Genere un arreglo de largo 100 y de nombre vector que contenga los primeros 100 nmeros naturales y luego imprimirlo descendentemente. Crear un arreglo de 50 elementos con nmeros aleatorios entre 51 y 100. Crear una matriz de 100 x 50 elementos de nombre matriz,que contenga los valores de los arreglos anteriores.

Vous aimerez peut-être aussi