You are on page 1of 10

REPUBLICA BOLIVARIANA DE VENEZUELA

MINITERIO DEL PODER POPULAR PARA LA DEFENSA


UNIVERSIDAD NACIONAL EXPERIMENTAL POLITECNICA
DE LA FUERZA ARMADA

ARREGLOS
Estudiantes:
PROF: Lic. Betsy Lavado

Vctor Cortez C.I: 25954164


Luis Pealoza C.I: 24793782
Vctor Florez C.I: 24793335
Nikolay Martnez C.I: 24248833
Elvis Flores C.I:

Tinaquillo, mayo de 2016

Introduccin

ARREGLOS

La presente investigacin est referida a los arreglos de programacin que estos son un tipo
de datos que contiene varios elementos de un mismo tipo. As mismo tambin se estudiara
los tipos Unidimensionales, multidimensionales y las caractersticas de estos.

Arreglo
Un arreglo es un tipo de datos que contiene varios elementos de un mismo tipo.

ARREGLOS

Cada elemento tiene asociado un ndice, y puede ser tratado como si fuera una variable. La
cantidad de elementos que tiene un arreglo es fija, y no puede cambiar durante la ejecucin
del programa.
Caractersticas: Si un arreglo tiene la caracterstica de que puede almacenar a N elementos
del mismo tipo, deber tener la posibilidad de permitir seleccionar a cada uno de ellos. As
se distinguen dos partes en los arreglos.
Los componentes o elementos (valores que se almacenan en cada una de las
casillas)
Los ndices (Permiten hacer referencia a los componentes)
El nmero total de componentes (NTC) es igual al lmite superior (LS) menos el lmite
inferior (LI) mas 1

El tipo de ndice puede ser cualquier tipo ordinal (carcter, entero, enumerado)
El tipo de componentes puede ser cualquiera (entero, real, cadena de caracteres,
registro, entre otros)
Se utilizan () para indicar el ndice de un arreglo. Entre los () se debe escribir un
valor ordinal (puede ser una variable, una constante o una expresin que d como
resultado un valor ordinal)
En cuanto a las dimensiones los arreglos pueden ser:
Unidimensional o vector: un solo ndice
Bidimensional o matriz: dos ndices
Multidimensional: ms de dos ndices
Diferencia con registro
Las dos diferencias sustanciales entre arreglos y registro son:
1) Un arreglo puede almacenar N elementos del mismo tipo, mientras que un registro
puede almacenar N elementos de distintos tipos que se llaman campos.

ARREGLOS

2) Los componentes de un arreglo se acceden por medio de ndices, mientras que en un


registro los campos se acceden por medio de su nombre, el cual es nico.
Arreglos unidimensionales
Un arreglo unidimensional es un tipo de datos estructurado que est formado por una
coleccin finita y ordenada de datos del mismo tipo. Es la estructura natural para modelar
listas de elementos iguales. Los datos que se guarden en los arreglos todos deben ser del
mismo tipo.
El tipo de acceso a los arreglos unidimensionales es el acceso directo, es decir, podemos
acceder a cualquier elemento del arreglo sin tener que consultar a elementos anteriores o
posteriores, esto mediante el uso de un ndice para cada elemento del arreglo que nos da su
posicin
relativa.
Para implementar arreglos unidimensionales se debe reservar espacio en memoria.
Los arreglos nos permiten hacer un conjunto de operaciones para manipular los datos
guardados en ellos, estas operaciones son: ordenar, buscar, insertar, eliminar, modificar
entre otras.
Representacin en memoria: Los arreglos guardan en memoria la cantidad de espacios
que se le indican en la declaracin.
Ejemplo: sea el siguiente arreglo unidimensional donde se va a guardar 5 datos de tipo
entero (integer)
x : array[1..5] of integer
En memoria el computador guarda 5 espacios: esto quiere decir en el arreglo X en la
posicin 1 guarda 34, en el arreglo X en la posicin 2 guarda 22, as hasta la ltima
posicin del arreglo X posicin 5 guarda 72.
X [1]
34
X [2]
22
X [3]
39
X [4]
63
X[5]
72
4

ARREGLOS

Declaracin de los arreglos unidimensionales: Se declara el tipo del arreglo, con la


palabra reservada TYPE, luego se declara la variable de tipo arreglo, esto se hace en el
bloque de declaracin de variables palabra reservada VAR.
Type
nombre_arreglo= array[x..y]of tipo_dato;
Ejemplos:
salarios= array [1x] of real;
nombre_trabajador=array[1..x] of string;
Nota: El tipo de dato del arreglo puede ser: integer,real, boolean, string etc.
Variables tipo array
Var
sueldo:salarios;
nombre:nombre_trabajador;
Una vez declarados los arreglos procedemos a cargar informacin en ellos, para esto
usamos estructuras repetitivas la ms recomendable por su facilidad es el for, una vez
cargada la informacin se puede hacer cualquier operacin de clculo y por ltimo
mostramos la informacin de los arreglos usando de igual manera la estructura repetitiva
for.
Carga de un arreglo, la letra i es el ndice o subndice del arreglo e indica la posicin del
arreglo:
for i:=1 to num do
begin
readln(notas[i]);
end;
Mostrar la informacin de un arreglo, la letra i es el indice o subindice del arreglo e indica
la posicin del arreglo::
for i:=1 to num do
begin
writeln(notas[i]:3:1);
end;

ARREGLOS

Se han hechos programas que suman una cantidad de nmeros usando dos variables, una
para leer cada nmero y otra para acumular la suma. Este enfoque tiene la desventaja de
que se pierden los valores de los sumandos. El uso de arreglos permite calcular la suma de
los nmeros con una cantidad mnima de cdigo y a la vez conservar cada valor, como
muestra el siguiente programa completo:
Program SumaN;
Uses
Crt;
Const
n = 5;
Var
nums: Array[1..n] Of Integer;
s, i: Integer;
Begin
For i:=1 To n Do
Begin
Write('Escriba el nmero: ');
ReadLn(nums[i]);
s := s + nums[i];
End;
WriteLn('La suma es: ', s);
End.
Ntese el uso de una constante para marcar el tamao del arreglo; dicha constante, tambin
sirve para controlar el For. De este modo, slo se hace necesario cambiar un nmero para
adecuar el programa a la escala apropiada

Ejercicios de arreglos unidimensionales:

ARREGLOS

* Dadas n cantidad de notas, calcular e imprimir el promedio de las notas y todas las notas
que fueron mayor a la media calculada.
PROGRAM calificaciones;
USES CRT;
type
listacalificaciones=array[1..n] of real;
VAR
notas:listacalificaciones;
media,suma:real;
num,i:integer;
BEGIN
WRITELN('INTRODUZCA la cantidad de notas a procesar');
READLN(NUM);
suma:=0;
for i:=1 to num do
begin
readln(notas[i]);
suma:=suma+notas[i];
end;
media:=suma/num;
writeln('la media es:' , media:2:2);
writeln('la lista de calificaciones mayores a la media es:');
for i:=1 to num do
begin
if notas[i]>media then
writeln(notas[i]:3:1);
readln;
end;
END.
(*Escribir
numeros,

un programa en pascal que


luego
dividirlos
entre
3
y

rellene un array con


mostralos
por
pantalla

11
*)

ARREGLOS

PROGRAM numeros;
USES CRT;
type
arreglonumeros=array[1..11]of real;
VAR
num:arreglonumeros;
i:integer;
numero:real;
BEGIN
for i:=1 to 11 do
begin
WRITELN('Introduzca el numero ' , i, ' a dividir');
readln(num[i]);
numero:=num[i]/3;
write('los numero resultantes de la division son:' ,numero:2:2);
readln;
end;
end.
Arreglos multidimensionales.
Hasta ahora nuestros arreglos son solo de una dimensin, es decir, tenemos nuestros datos
encadenados en lnea recta: [ ] - [ ] - [ ] -....- [ ] pero adems, es posible definir arreglos de
dos dimensiones, o tambin conocidos como matrices:

[ ] -[ ] -[ ] -.... - [ ]
| | |
|
[ ] -[ ] -[ ] -.... - [ ]
| | |
|
. . .
.
. . .
.
. . .
.
[ ] -[ ] -[ ] -.... - [ ]
A simple vista la estructura parece muy compleja pero no lo es tanto. En realidad un arreglo
bidimensional es tratado en forma muy similar a un arreglo unidimensional. Veamos cmo
se definen:
8

ARREGLOS

var nombre: ARRAY[ rango1, rango2 ] OF tipo;


Por ejemplo:
var Matriz: ARRAY[ 1..3, 1..5 ] OF integer;
Es un arreglo bidimensional de 3x5. Originalmente este arreglo esta vaco:
[ ] -[ ] -[ ]
[ ] -[ ] -[ ]
[ ] -[ ] -[ ]
[ ] -[ ] -[ ]
[ ] -[ ] -[ ]
Y si queremos guardar algo en alguna posicin solo hacemos:
nombre[ columna, fila ] := valor;
Por ejemplo: Matriz[ 2, 2 ]:=3; y el arreglo quedara as:
[ ] -[ ] -[ ]
[ ] -[3] -[ ]
[ ] -[ ] -[ ]
[ ] -[ ] -[ ]
[ ] -[ ] -[ ]
El resto de las operaciones son las mismas que con los arreglos. Tambin podemos utilizar
contadores para movernos por las filas y las columnas de manera de leer, imprimir o copiar
un arreglo bidimensional. Veamos un ejemplo:
uses crt;
var M: array[1..3, 1..4] of integer;
c, f: integer;
begi
n
randomize;
clrscr;
{ Rellena la matriz con numeros al azar }
for f:=1 to 4 do
for c:=1 to 3 do
M[c,f] := random(10);
{ Imprime la matriz }
for f:=1 to 4 do
begin
for c:=1 to 3 do write( '[', M[c,f], ']' );
writeln;
end;
readln;
end.

ARREGLOS

Conclusin
Un arreglo, ms que un tipo de dato es una estructura que nos permite agruparlos, este
consiste en una "cadena" de datos del mismo tipo. Por ejemplo, podemos tener una serie de
nmeros encadenados de la siguiente forma: [1] -[7] -[13] -[1232] -[-43].... Este es un
arreglo de nmeros enteros, o sea que guarda una serie de variables de tipo INTEGER,
todas agrupadas en una sola estructura.

10

You might also like