Está en la página 1de 6

UNIVERSIDAD NACIONAL EXPERIMENTAL

"FRANCISCO DE MIRANDA"
COMPLEJO DOCENTE EL SABINO
DEPARTAMENTO DE GERENCIA
UNIDAD CURRICULAR: INFORMATICA

GUIA III

ARREGLOS UNIDIMENSIONALES (VECTORES - LISTAS).


ARREGLOS BIDIMENSIONALES (MATRICES - TABLAS).

Prof. : Víctor Gavidia http://vmgsistemas.blogspot.com/


ARREGLOS UNIDIMENSIONALES Y BIDIMENSIONALES (VECTORES Y MATRICES)
Hasta ahora hemos estado trabajando principalmente con cuatro tipos de datos
básicos: enteros (integer), reales (real), caracteres (char) y valores lógicos (boolean). Sin
embargo, existen otros tipos de datos más complejos como los tipos estructurados que permiten
almacenar una colección de valores bajo un único identificador de variable, es decir, la colección
tiene un único nombre que engloba todos esos valores. Por supuesto, se puede seguir accediendo
individualmente a cada valor o componente de la colección. Por ejemplo, si en uno de
nuestros programas necesitamos almacenar diez valores de tipo entero, en lugar de crearnos
diez variables con diez identificadores diferentes num1, num2, ..., num10, podríamos
almacenar esos diez valores utilizando una única variable de un tipo estructurado, y luego
acceder a cada valor concreto a través del identificador de la variable general y el índice concreto
del valor, que podría ser por ejemplo de la posición 1 a la posición 10.

Los arrays son un caso concreto de tipo estructurado (como los registros, los
conjuntos y los ficheros). Básicamente son variables capaces de almacenar una colección de
valores que sean del mismo tipo (por ejemplo, como decíamos antes, diez enteros). Los
arrays pueden tener una o más dimensiones. Cuando tienen una sola dimensión se les suele
llamar vectores, y cuando tienen dos dimensiones se les conoce como matrices (lo mismo que en
matemáticas o física).

Arreglos:

Un array se caracteriza por:


1. Almacenar los elementos del array en posiciones de memoria continua
2. Tener un único nombre de variable que representa a todos los elementos, y éstos a su vez
se diferencian por un índice o subíndice.
3. Acceso directo o aleatorio a los elementos individuales del array.

Los arrays se clasifican en:


 Unidimensionales (vectores o listas)
 Multidimensionales (matrices o tablas)

ARREGLOS UNIDIMENSIONALES (VECTORES - LISTAS)


Un arreglo unidimensional es una secuencia de datos del mismo tipo. Los datos se llaman
elementos del arreglo y se enumeran consecutivamente, el tipo de elementos almacenados en el
arreglo puede ser de cualquier tipo de los datos primitivos de un lenguaje, incluso estructuras
definidas por el usuario. Un arreglo es un conjunto de variables en donde cada una de ellas puede
ser referenciada utilizando su posición relativa es decir su ubicación en relación con el primer
elemento de dicho conjunto.

Un arreglo puede contener, por ejemplo: todas las notas de un alumno o las edades de una
sección de computación, donde cada valor de un arreglo se denomina elemento. Los elementos
de un arreglo se enumeran consecutivamente desde la posición inicial hasta la posición N; estos
números se denominan índice del arreglo. Entonces se tiene lo siguiente, un arreglo es un
conjunto de valores que están asociados bajo un mismo nombre y se puede referenciar a un
elemento particular mediante el nombre y el índice del elemento a seleccionar.

Prof. : Víctor Gavidia http://vmgsistemas.blogspot.com/


Cada uno de estos elementos se trata como si fuera una variable individual, es
decir, cuando escribimos números[1] es como si tuviéramos nuestra variable num1 de tipo
entero, por lo que podemos asignarle cualquier valor entero a la variable utilizando el
operador de asignación (:=) o hacer cualquier operación que se nos ocurra con ella.

DECLARACION DE UN VECTOR
Como cualquier otra variable, se debe declarar un arreglo antes de utilizarlo. Un arreglo
cuando se declara se tiene que indicar dos cosas importantes que son: el tipo de datos y el
tamaño del arreglo.

Hasta ahora, para declarar una variable escribíamos su nombre, seguido de dos puntos, y
después el tipo de esa variable acabado en punto y coma (por ejemplo, num: integer;).
Para declarar una variable de tipo vector en Pascal tenemos que hacer uso de la palabra
reservada array, tal y como se muestra a continuación:

nombreDeLaVariable : array [índiceInicial..ÍndiceFinal] of tipoBásico;

Significado:
nombreDeLaVariable Identificador de arreglo o Nombre del arreglo.
índiceInicial..índiceFinal Tamaño del arreglo.
tipo Cualquiera de los tipos estándar de variable.

Donde índiceInicial e índiceFinal son los índices (posiciones) inicial y final de la


colección de valores, y tipoBásico es cualquiera de los tipos básicos que hemos visto hasta ahora
(integer, real, char, boolean, incluso string). ¿Cómo declararíamos el vector números del
que hablamos anteriormente?

números: arreglo [1..7] de entero / números : array [1..7] of integer;

De esta forma tendremos una variable cuyo identificador es números y que es de


tipo array entero, cuyos índices van desde el 1 hasta el 7, por lo que tendremos 7 enteros.

Ej: Tamaño=7

Subíndices 1 2 3 4 5 6 7
Números 5 64 74 58 75 112 78

Números[1] se refiere al elemento situado en la casilla 1 que corresponde al valor 5.


Números[7] se refiere al elemento situado en la casilla 7 que corresponde al valor 78.

Prof. : Víctor Gavidia http://vmgsistemas.blogspot.com/


LLENADO DE UN VECTOR
Un arreglo se puede llenar de dos formas una de manera aleatoria en donde el compilador
llena el arreglo y otra forma es darle la oportunidad al usuario de indicar los valores que tendrá el
vector.

DESDE – HASTA - HAGA MIENTRAS - HAGA


Español Pascal Español Pascal

desde i = 1 hasta 10 haga for i:=1 to 10 do mientras(i<=N) haga while(I<=N) do


leer(vector[i]) readln(vector[i]) leer(vector[i]) readln(vector[i])
fin; end; i=i+1; i:=i+1;
fin; end;

Ejemplo: llenado de vectores:

Algoritmo en pseudocódigo que permita llenar un vector con 10 números ingresados por teclado,
sabiendo que sus valores son: 1, 4, 6, 7, 3, 45, 21, 8, 15, 10, y realice la suma de los mismos.

INICIO ALGORITMO SUMA_NUMEROS;


DEFINIR
CONSTANTES
NUMVARIOS:ARREGLO[1..10] DE ENTERO=(1,4,6,7,3,45,21,8,15,10) ;
VARIABLES
SUMA, I: ENTERO;

INICIO
ESCRIBIR ('ESTE PROGRAMA REALIZA LA SUMA DE 10 NUMEROS: ‘);
SUMA:=0;
DESDE I:=1 HASTA 10 HAGA
INICIO
SUMA:=SUMA+NUMVARIOS[I];
FIN;

ESCRIBIR('LA SUMA ES: ',SUMA);


ESCRIBIR('PRESIONE UNA TECLA PARA SALIR');
FIN;
FIN ALGORITMO SUMA_NUMEROS.

Prof. : Víctor Gavidia http://vmgsistemas.blogspot.com/


ARREGLOS BIDIMENSIONALES (MATRICES - TABLAS)

Como ya hemos comentado, en la declaración de un array hay que especificar de qué tipo
van a ser sus componentes. Este tipo puede ser otro array, de forma que cada elemento del
primer vector es a su vez otro vector. Así podemos definir arrays bidimensionales, o lo que es lo
mismo, matrices. La siguiente declaración crea una variable llamada números de tipo array de
cuatro elementos, en el que cada elemento es a su vez un array formado por tres números
enteros.

Fila i Fila i
Subíndice de Filas 1 2 3 4 1 2 3 4

Columna j

Columna j
4 27 215 49 1 1,1 1,2 1,3 1,4 1
-10 8 16 61 2 2,1 2,2 2,3 2,4 2
51 15 57 -3 3 3,1 3,2 3,3 3,4 3
Subíndice de Columnas

Números es un array de cuatro elementos que contiene en cada posición un array de tres
elementos. Podemos acceder a cada una de estas celdas de la matriz de la siguiente manera

nombreDeLaVariable : array [índicefila,índicecolumna] of tipoBásico;

números : arreglo [1..3,1..4] tipo entero; / números : array [1..3,1..4] of integer;

Si quisiéramos acceder a la posición del elemento [16] que se encuentra en una de las celdas de
la matriz, seria de la siguiente manera:

 Se encuentra en la Fila 2, Columna 3.


 Su posición en la matriz seria números[2,3]

LLENADO DE UNA MATRIZ

Español Pascal
desde i:= 1 hasta 3 haga for i:= 1 to 3 do
desde j:=1 hasta 4 hacer for j:= 1 to 4 do
leer (Matriz[i,j]) readln(matriz[i,j])
fin i; end i;
fin j; end j;

Para la Programación y Pseudocódigo, se utilizaran [i, j], para definir Filas[i] y columnas[j].

Prof. : Víctor Gavidia http://vmgsistemas.blogspot.com/


Se tienen 2 matrices con los siguientes valores: matriz1(3,1),(4,5) y matriz2(1,3),(4,2), realizar el
llenado de una matriz con la suma de matriz1 y matriz2.

INICIO DEL ALGORITMO SUMA_MATRICES;


DEFINIR
CONSTANTES
MATRIZ1:ARREGLO[1..2,1..2] DE ENTERO=((3,1),(4,5));
MATRIZ2:ARREGLO[1..2,1..2] DE ENTERO=((1,3),(4,2));
VARIABLES
MATRIZ3:ARREGLO[1..2,1..2] DE ENTERO;
I,J:ENTERO;

INICIO
DESDE I:=1 HASTA 2 HAGA
DESDE J:=1 HASTA 2 HAGA
INICIO
MATRIZ3[I,J]:=MATRIZ1[I,J + MATRIZ2[I,J];
ESCRIBIR('LA SUMA ES: ( ',I,' ,',J,') '); {MUESTRA LA POSICION}
ESCRIBIR(MATRIZ3[I,J]); {MUESTRA LA SUMA DE LAS MATRICES}
FIN;

ESCRIBIR('FIN DE LA SUMA DE MATRICES');


FIN,
FIN DEL ALGORITMO SUMA_MATRICES

Prof. : Víctor Gavidia http://vmgsistemas.blogspot.com/

También podría gustarte