12. arreglos parte i
Transcript of 12. arreglos parte i
1
Ricardo Carrera Hernández
ArreglosParte I
Universidad Veracruzana
Ricardo Carrera Hernández
Agosto 2013
Campus Ixtac
2
DefiniciónColección de datos.
Contienen valores del mismo tipo.
Su tamaño no se puede modificar una vez definido.
El acceso a sus elementos puede ser secuencial o aleatorio.
Puede ser unidimensional o multidimensional.
3
Tipos de datosDato Características Observaciones
Simple estándar
Entero (integer)Flotante (float)Carácter (char)Lógico (boolean)
Definido por el programador (no estándar)
Subrango (subrange)Enumerativo (enumerated)
Estructurado estáticos
Arrays (vectores/matrices)Registros (record)Archivos (files)Conjuntos (set)Cadenas (string)
dinámicos
Listas (pilas/ colas)Listas enlazadasÁrbolesGrafos
4
Arreglos unidimensionales
2 4 6 8 10 1412 16 18 20
X(0) X(1) X(2) X(3) X(4)
X(5) X(6) X(7) X(8) X(9)
Nombre del arreglo: X
Arreglo de una dimensión También se le llama vector
5
Vector Alumnos
Luis Francisco1
José2
Victoria3
..
Martíni
..
Graciela30
Dirección r
Dirección r + 1
Dirección r + 2
Dirección r + 29
Datos en el vectorCada elemento del vector se trata como una variable
simple al ocupar un lugar en memoria.
números[20] 75
La instrucción
escribir(números[20])
Visualiza el valor almacenado en la posición 20ª.
Ejemplo
Considerar un vector A de ocho elementos:
A[0] A[1] A[2] A[3] A[4] A[5] A[6] A[7]
14.0 12.0 8.0 7.0 6.41 5.23 6.15 7.25
Elemento 1º
Elemento 2º
Elemento 8º
Acciones Resultados
escribir(A[0]) Visualiza el valor de A[0] o 14.0
A[4] 45 Almacena el valor 45 en A[4]
suma A[1] + A[3] Almacena la suma de A[1] y A[3] o bien 19.0 en la variable suma
suma suma + A[4] Añade en la variable suma el valor de A[4], es decir, suma = 64.0
A[5] A[5] + 3.5 Suma 3.5 A[5]; el nuevo valor de A5] será 9.73
A[6] A[1] + A[2] Almacena la suma de A[1] y A[2] en A[6]; el nuevo valor de A[6] será 20.0
8
EjercicioSupongamos un vector V de ocho elementos
V[1] V[2] V[3] V[4] V[5] V[6] V[7] V[8]
12 5 -7 14.5 20 1.5 2.5 -10
Si i 4
V[i + 1] representa el elemento V[5] de valor 20V[i + 2] representa el elemento V[6] de valor 1.5V[i – 2] representa el elemento V[2] de valor 5V[i + 3] representa el elemento V[7] de valor2.5
10
Declaración de un vector en el algoritmotipo
array[liminf .. limsup] de tipo : nombre_array
Donde:
nombre_array nombre válido del arregloliminf .. limsup límites inferior y superior del rango del arraytipo tipo de datos de los elementos del array:
entero, flotante, etc.
12
EjemploLectura de 20 valores enteros de un vector denominado
f.
algoritmo LeeVectortipo array[1..20] de entero : finalvar final : f entero: iinicio desde i 0 hasta 19 hacer leer (f[i]) fin_desdefin
13
Ejercicio
Diseñar el algoritmo anterior usando las estructuras: Mientras Repetir
Realizar la corrida de escritorio del siguiente diagrama de flujo y escribir el algoritmo en pseudocódigo.