Arreglos
Tipos estructurados
Cada elemento del tipo está formado por un conjunto de valores (una estructura)
Tipos estructurados de Pascal:
• Arreglos (array)
• Registros (record)• Conjuntos (set)
Arreglos. Motivación
Almacenar un conjunto de valores bajo un mismo nombre de variable.
Cada uno de los valores se puede acceder independientemente utilizando un índice(generalmente un subrango)
Está inspirado en la notación habitual en matemáticas para secuencias finitas:
a1,a2,...,an
donde a sería el nombre genérico de todos los valores y el subíndice es utilizadopara identificar un valor en particular.
Declaración de un arreglo
Los tipos arreglo se declaran en la sección type del programa:
type nombre = array [tipo_indice] of tipo_base;tipo_indice debe ser un tipo ordinal, generalmente es un subrango de enteros.
tipo_base es cualquier tipo de Pascal.
Representación de un arreglo en la memoria
Un arreglo ocupa tantas celdas dememoria como el cardinal de su tipo índice:
const
MaxArreglo = 9;
type
RangoArreglo = 1..MaxArreglo;
Arreglo1 = array [RangoArreglo] of integer;
var
a : Arreglo1; (* ocupa 9 celdas*)
La variable a ocupa 9 celdas:
*------*------*------*------*-----*-----*-----*-----*-----*
| 23 | 34 | 0 | -12 | 6 | 9 | 11 | -2 | 34 |*------*------*------*------*-----*-----*-----*-----*-----*
1 2 3 4 5 6 7 8 9
Tipos Anónimos
Son tipos que se utilizan sin asignarles un nombre.
type
(* indice anonimo *)arreglo = array [0..9] of real;
var
(* arreglo anonimo *)
a : array ['A'..'Z'] of boolean;
Los tipos anónimos se utilizan comúnmente cuando un tipo sólo aparece una vez.
Ejemplos dearreglos
type
rango = 33..90;
arr1 = array [char] of integer; (* 256 celdas *)
arr2 = array [33..90] of real;
arr3 = array [integer] of char; (* demasiado grande! *)
arr4 =...
Regístrate para leer el documento completo.