Las matrices o vectores surgen en informática por la necesidad de manejar un número determinado de datos del mismo tipo. La idea está tomada del concepto matemático de matriz.
Por tanto una matriz es una colección de datos del mismo tipo, y que además están alojados consecutivamente en la memoria. A los elementos de la matriz se puede acceder de forma individual mediante un índice, y cada elemento de la matriz ocupa en memoria lo mismo que si estuviera almacenado en una variable.
Arreglo: Un Arreglo es una estructura de datos que almacena bajo el mismo nombre (variable) a una colección de datos del mismo tipo.
Los arreglos se caracterizan por:
· Almacenan los elementos en posiciones contiguas de memoria
· Tienen un mismo nombre de variable que representa a todos los elementos. Para hacer referencia a esos elementos es necesario utilizar un índice que especifica el lugar que ocupa cada elemento dentro del archivo.
Tipos de arreglos
- Unidimensionales (vectores)
- Bidimensionales (matrices)
Vectores
Es un arreglo de “N” elementos organizados en una dimensión donde “N” recibe el nombre de longitud o tamaño del vector. Para hacer referencia a un elemento del vector se usa el nombre del mismo, seguido del índice (entre corchetes), el cual indica una posición en particular del vector. Por ejemplo:
Vec[x]
Donde:
Vec………… Nombre del arreglo
x…………… Numero de datos que constituyen el arreglo
Representación gráfica de un vector
Vec[1] Vec[2] Vec[3] Vec[4] |
7 |
8 |
9 |
1 |
0 |
Operaciones con vectores
Asignación
En general, los lenguajes de programación incluyen como muchas instrucciones de lectura/escritura de vectores completos, siendo muy pocos la que tienen definidas otras operaciones primitivas con el vector tomado como dato único.
La estructura de control asociada de manera natural con los vectores es la estructura de tipo "PARA"
Ejemplo:
Algoritmo Inicializar_Vector
Vector de reales V [1 .. 100]
Para i de 1 hasta 100 hacer
V(i) ← 0.0
Fin para
Final
En algunos lenguajes se permite la asignación directa entre vectores de igual dimensión y tipo.
La condición principal para poder realizar este tipo de asignaciones es que debe cumplirse que los dos vectores sean del mismo tipo y de la misma longitud.
u Ü v el vector 'u' pasa a contener los datos de 'v'
Otra forma de hacer esta asignación es a través de la asignación de elemento en elemento. Este tipo de asignación es la que se realiza de forma común en programación, y la que utilizaremos en nuestros algoritmos.
Para i de 1 hasta n hacer
u(i) ←v(j)
Fin para
Operaciones elementales con vectores numéricos
Suma de vectores
Algoritmo suma_vectores
Constante n= ...
Variable entera i
Vectores reales a[1..n], b[1..n], c[1..n]
Leer a,b
Para i de 1 a n hacer
c(i) ← a(i)+b(i)
Fin para
Escribir c
Final
Los vectores que se suman han de ser del mismo tipo y dimensión.
Matriz
Es un arreglo de M * N elementos organizados en dos dimensiones donde “M” es el numero de filas o reglones y “N” el numero de columnas.
Para representar una matriz se necesita un nombre de matriz se necesita un nombre de matriz acompañado de dos índices.
Mat [R,C]
Donde R indica el renglón y C indica la columna, donde se encuentra almacenado el dato.
Representación gráfica de una matriz
Fila o Renglón
[R]
Fila o Renglón [R] |
Mat [R,C]
1,1 | 1,2 | 1,3 | 1,4 | |
2,1 | 2,2 | 2,3 | 2.4 | |
3,1 | 3,2 | 3,3 | 3,4 | |
| 4,2 | 4,3 | 4,4 |
Operaciones con matrices
Asignación.
para i de 1 a m hacer
para j de 1 a n hacer
a(i,j) ← 0.0
fin para
fin para
Definición de matriz identidad
para i de 1 a n hacer
para j de 1 a n hacer
si i=j entonces
I(i,j) ← 1
sino I(i,j) ← 0
finsi
fin para
fin para
Asignación de valores introducidos por el usuario:
para i de 1 a m hacer
para j de 1 a n hacer
leer a(i,j)
fin para
fin para
Operaciones elementales con matrices numéricas.
Suma de matrices.
Algoritmo suma de matrices
constantes m=..., n=...
variables enteras i, j
matrices reales a(1..m,1..n), b(1..m,1..n), c(1..m,1..n)
leer a, b
para j de 1 a m hacer
para j de 1 a n hacer
c(i,j) ← a(i,j) + b(i,j)
fin para
fin para
escribir c
Final
No hay comentarios:
Publicar un comentario