Documente Academic
Documente Profesional
Documente Cultură
Facultad de Ingeniera
CURSO
TCNICAS DE PROGRAMACIN
EL-255
SEGUNDO CICLO
SEMANA 09
ESTRUCTURA DE DATOS:
ARREGLOS
a b c d
CARACTERSTICAS
Finita: Todo arreglo tiene su lmite, es decir
debe determinarse cual ser el nmero mximo
de elementos que podran formar parte del
arreglo.
Homognea: Todos los elementos de un
arreglo son del mismo tipo (Todos enteros, todos
booleanos, etc.)
Ordenada: Se puede determinar cual es el
primer elemento, el segundo, el tercero, y el
ensimo elemento.
Tipos
Unidimensionales (Listas, Vectores)
Multidimensionales (Tablas, Matrices)
a b c d a b
c d
VECTOR
Un arreglo o vector (llamados en ingls arrays)
es una zona de almacenamiento contiguo, que
contiene una serie de elementos del mismo tipo.
ndices
Todo vector se compone de un determinado
nmero de elementos. Cada elemento es
referenciado por la posicin que ocupa dentro
del vector. Dichas posiciones son llamadas
ndice y siempre son correlativos. Existen tres
formas de indexar los elementos de un arreglo:
TIPOS
Indexacin base-cero (0): El primer elemento del vector ser
el componente cero (0') del mismo, es decir, tendr el ndice '0'.
En consecuencia, si el vector tiene 'n' componentes la ltima
tendr como ndice el valor 'n-1'.
Indexacin base-uno (1): En esta forma de indexacin, el
primer elemento del arreglo tiene el indice '1' y el ltimo tiene el
ndice 'n' (para un arreglo de 'n' componentes).
Indexacin base-n (n): Este es un modo verstil de
indexacin en la que el ndice del primer elemento puede ser
elegido libremente, en algunos lenguajes de programacin se
permite que los ndices puedan ser negativos e incluso de
cualquier tipo escalar (tambin cadenas de caracteres).
Representacin Grfica
Notas[10,12,11,08,20]
Elementos
Notas
10 12 11 08 20
Nombre del 1 2 3 4 5
vector
ndices
1 2 50
Nmero de Componentes:
NTC= 50 1 + 1
Cada componente del arreglo X ser un nmero entero.
El acceso es por medio de un ndice que ser un valor comprendido
entre 1 y 50.
Por Ejemplo:
X[1] hace referencia al elemento de la posicin 1.
X[2] hace referencia al elemento de la posicin 2.
X[50] hace referencia al elemento de la posicin 50.
ndice
OPERACIONES CON ARREGLOS
Las operaciones en las que intervienen arreglos
podemos clasificar de la siguiente manera:
Lectura/ Escritura.
Asignacin.
Actualizacin.
Insercin.
Eliminacin.
Modificacin.
Ordenacin
Bsqueda.
LECTURA
Consiste en leer y asignar un valor a c/u de los
componentes.
Ejemplo:
Para X=Arreglo[1.50] de enteros.
Podemos leer: X[1], X[2] X[N] empleando
Bucle.
inicio
algoritmo leer_vector
tipo i=1 50
array[1..50] de entero : ArregloX
var
ArregloX : X
entero: i X[i]
inicio
desde i = 1 hasta 50 hacer
leer( X[i] )
fin_desde
fin fin
Impresin
Es similar al de la lectura. Se debe escribir el
valor de c/u de los componentes.
Para imprimir los N primeros componentes del
arreglo X de forma consecutiva.
inicio
algoritmo escribir_vector
tipo z=1 50
array[1..50] de entero : ArregloX
var
ArregloX : X
X [z]
entero: i
inicio
desde z= 1 hasta 50 hacer
escribir( X[z] )
fin_desde
fin fin
En algunos lenguajes es posible
ASIGNACIN asignar un variable de tipo ARREGLO
a otra exactamente del mismo tipo.
algoritmo asignar_vector
tipo inicio
array[1..100] de entero : ArregloX
var N
ArregloX : X
real : N i=1 N
entero: i
inicio X[i]
escribir( Ingrese La cantidad: )
Leer(N)
fin fin
EJEMPLOS UNIDIMENSIONALES
Calcular la media aritmtica de los elementos del arreglo X de N
elementos. Donde:
X: arreglo definido para almacenar 100 elementos, de tipo real.
N: Nmero actual de datos del arreglo, tipo entero.
M: Variable que presenta la media aritmtica de tipo real.
Variables locales:
I: variable subndice para acceso a cada uno de los elementos, tipo
entero.
S: variable que almacena la suma de los elementos del arreglo, tipo
entero.
Media aritmtica: Desarrollo
INICIO
S=0
A
I=1 N L
G
O
S=S+X[I] R
I
T
M
O
M=S/N
FIN
EJEMPLOS PARTE 01
Realizar el Diagrama de flujo y Pseudocdigo
1. Se pide calcular el promedio de notas,
contenidas en un arreglo de N notas.
2. Realizar un programa que permita leer una lista
de N datos enteros se pide calcular el valor
mximo.
Ejercicio 01: Se pide calcular el promedio de notas, contenidas en un arreglo de N notas.
Pseudocdigo Diagrama de Flujo
algoritmo promedio_notas INICIO
tipo
array[1..100] de entero : ArregloN C
var
ArregloN : N I= 1-----> C
real : C,S, PROM
entero: I N[I]
inicio
escribir( Ingrese La cantidad: )
Leer(C)
S= 0
A
desde I = 1 hasta C hacer L
I= 1-----> C G
leer( N[I] )
fin_desde O
S= S + N[I] R
S=0
I
desde I = 1 hasta C hacer T
S= S + N[I] M
PROM= S/C
fin_desde O
I= 1-----> C
N[I]
S= 0
I= 1-----> C
S= S + N[I]
PROM= S/C
PROM
FIN
Ejercicio 02: Realizar un programa que permita leer una lista de N datos enteros se pide calcular el valor mximo.
escribir(MAY) MAY
fin FIN
Ejercicio 02: Realizar un programa que permita leer una lista de N datos enteros se pide calcular el valor mximo.
I= 1-----> N
X[I]
I= 1-----> N
V I=1 F
MAY= X[I]
MAY
FIN
GRACIAS