Beruflich Dokumente
Kultur Dokumente
PROFESOR:
ATUNGA VERGARA JOSE
TEMA:
Monografa de matrices bidimensionales
INTEGRANTES:
INTRODUCCIN
NDICE
heterogneo.,
Escuela Operacional o
de
que
proceso,
recibe
las
definiendo
denominaciones
esta
teora
como
de
un
INTRODUCCIN
Matrices bidimensionales
Concepto
Los arreglos bidimensionales son tablas de valores. Cada elemento de un arreglo
bidimensional est simultneamente en una fila y en una columna.
En matemticas, a los arreglos bidimensionales se les llama matrices, y son muy
utilizados en problemas de Ingeniera.
En un arreglo bidimensional, cada elemento tiene una posicin que se identifica
mediante dos ndices: el de su fila y el de su columna.
Caractersticas
Declaracin
La declaracin de un arreglo consiste en establecer las caractersticas del arreglo y sus
elementos, por medio de la siguiente sintaxis:
<tipo> [ , ] < identificador > ;
Donde:
Tipo indica el tipo correspondiente a los elementos del arreglo, identificador es el nombre
del arreglo, y el par de corchetes y la coma, [ , ], representan las dimensiones del arreglo y
encierra dos nmeros enteros, cuyo producto corresponde al nmero de elementos del
arreglo.
Ejemplos:
double [ , ] matriz ;
int [ , ] ubicacin ;
Rama [ , ] rbol; // Rama es una clase.
Observe que, en la declaracin, el espacio entre los corchetes est vaco. Esto se debe a
que, durante dicha operacin, no se reserva espacio en la memoria.
Creacin
La creacin de un arreglo bidimensional consiste en reservar espacio en la memoria
para todos sus elementos, utilizando la siguiente sintaxis:
< identificador > = new <tipo> [ dim1, dim2 ] ;
Donde:
New es el operador para gestionar espacio de memoria, en tiempo de ejecucin,
dim1 y dim2 son valores enteros que representan las dimensiones del arreglo.
El tamao del arreglo es el resultado de multiplicar los valores de las dimensiones y
representa el nmero de elementos del arreglo.
Ejemplos:
matriz = new double [2, 3] ; // Se crea el arreglo matriz, con 6 elementos de tipo
//punto flotante y precisin double .
ubicacin = new int[ 4,2] ; // Se crea el arreglo ubicacin, con 8elementos de
//tipo entero de 32 bits .
rbol = new Rama[5,2] ; // Se crea el arreglo rbol, con 10 objetos
//de la clase Rama.
Las operaciones de declaracin y creacin anteriores se pueden agrupar en una sola
instruccin, como se muestra enseguida:
double [ , ] matriz = new double [2,3] ;
int [ , ] ubicacin = new int[4, 2] ;
Rama [ , ] alumno = new Rama[5,2] ;
Inicializacin
Un arreglo es un objeto que, cuando es creado por el compilador, se le asignan
automticamente valores iniciales predeterminados a cada uno de sus elementos, de
acuerdo a los siguientes criterios:
Si el tipo del arreglo es numrico, a sus elementos se les asigna el valor cero.
Si el tipo del arreglo es char, a sus elementos se les asigna el valor '\u0000'.
Si el tipo del arreglo es bool, a sus elementos se les asigna el valor false.
Si el tipo del arreglo es una clase, a sus elementos se les asigna el valor null.
Acceso
Se puede acceder a los valores de los elementos de un arreglo bidimensional a travs del
nombre del arreglo y dos subndices. Los subndices deben escribirse entre corchetes y
representa la posicin del elemento en el arreglo. As, podemos referirnos a un elemento
del arreglo escribiendo el nombre del arreglo y los subndices del elemento entre
corchetes. Los valores de los subndices empiezan en cero para el primer elemento,
hasta el tamao del arreglo menos uno.
Ejemplo:
int [ , ] posicin = new int[5, 10] ; // Crea el arreglo posicin , con 50 elementos de tipo
entero.
int x;
posicin[ 3, 5] = 3 ;
x = posicin[ 3, 5] ;
5.33,
2.14,
0.71,
6.28,
0.77,
4.67, 6.41],
6.57],
2.56],
8.76],
8.78]])
>>> a[4, 3]
8.78
>>> a[-1, -1]
8.78
>>> a[0, -1]
6.41
Tambin se puede obtener secciones rectangulares del arreglo usando el operador de
rebanado con los ndices:
>>> a[2:3, 1:4]
array([[ 0.54, 0.71, 2.56]])
>>> a[1:4, 0:4]
array([[ 9.54, 0.3 , 2.14, 6.57],
[ 5.62, 0.54, 0.71, 2.56],
[ 8.19, 2.12, 6.28, 8.76]])
>>> a[1:3, 2]
array([ 2.14, 0.71])
>>> a[0:4:2, 3:0:-1]
array([[ 6.41, 4.67, 5.33],
[ 2.56, 0.71, 0.54]])
>>> a[::4, ::3]
array([[ 3.21, 6.41],
[ 8.72, 8.78]])
Para obtener una fila completa, hay que indicar el ndice de la fila, y poner: en el de las
columnas (significa desde el principio hasta el final). Lo mismo para las columnas:
>>> a[2, :]
array([ 5.62, 0.54, 0.71, 2.56])
>>> a[:, 3]
array([ 6.41, 6.57, 2.56, 8.76, 8.78])
Note que el nmero de dimensiones es igual a la cantidad de rebanados que hay en los
ndices:
>>> a[2, 3]
2.56
>>> a[2:3, 3]
array([ 2.56])
Otras operaciones
La trasposicion consiste en cambiar las filas por las columnas y viceversa. Para
trasponer un arreglo, se usa el mtodo transpose:
>>> a
array([[ 3.21, 5.33, 4.67, 6.41],
[ 9.54, 0.3 , 2.14, 6.57],
[ 5.62, 0.54, 0.71, 2.56]])
>>> a.transpose()
array([[ 3.21, 9.54, 5.62],
[ 5.33, 0.3 , 0.54],
[ 4.67, 2.14, 0.71],
[ 6.41, 6.57, 2.56]])
El mtodo reshape entrega un arreglo que tiene los mismos elementos pero otra forma.
El parmetro de reshape es una tupla indicando la nueva forma del arreglo:
>>> a = arange(12)
>>> a
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11])
>>> a.reshape((4, 3))
array([[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8],
[ 9, 10, 11]])
CONCLUSIONES
Se puede decir que los arreglos pueden variar dependiendo sus dimensiones. Estos
pueden ser unidimensionales y bidimensionales; a los primeros se les conoce como
vectores y como su nombre lo indica poseen una dimensin o una lista de datos del
mismo tipo y los bidimensionales poseen dos dimensiones; se usan para representar
datos que pueden verse como una tabla con filas y columnas y se les conoce como
matrices. La codificacin es algo tan simple como lo que realizamos a diario cuando
transformamos imgenes visuales o entidades conceptuales en palabras, oraciones,
textos y las comunicamos a aquellos que nos rodean. Conocemos a la codificacin
como cualquier operacin que implique la asignacin de un valor de smbolos o
caracteres a un determinado mensaje verbal o no verbal con el propsito retransmitirlo a
otros individuos o entidades que compartan el cdigo.