1.8 Arrays unidimensionales
Sesión Prevista para el 19 Diciembre 2008

 

1.8.1 Escribir un programa en Pascal que utilice un procedimiento para escribir en pantalla el contenido de un array (el array es estático y constante) .
Declaración de un array estático como una constante Escribir en pantalla el contenido de un array estático
Program declara_array_estatico_cte;

const a: array [1..4] of integer = (13,23,37,43);
begin
end.

Program escribe_array_estatico_cte;

const

i_inf = 1;
i_sup = 4;
a: array [i_inf..i_sup] of integer = (13,23,37,43);

var i:integer;
begin

for i:= 1 to 4 do

Writeln('El valor de la posición ', i, ' es: ', a[i])

end.

 
Escribir en pantalla el contenido de un array estático, definido como una constante, utilizando un procedimiento.
   

 

1.8.2 Hacer el ejercicio anterior, definiendo el array estático com una variable.
1.8.3 Escribir un programa en Pascal que utilice un procedimiento para escribir el contenido de un array dinámico en pantalla.
Declaración de un array dinámico como una variable (los arrays dinámicos no se pueden definir como constantes) Escribir en pantalla el contenido de un array dinámico
Program declara_array_dinamico;

var a: array of integer;
begin
end.

Program escribe_array_dinamico;

var

a:array of integer;
i:integer;

begin

 

setLength(a,4);
for i:= low(a) to high(a) do

Writeln('El valor de la posición ', i, ' es: ', a[i])

end.

Observar que, a diferencia del ejemplo del array estático, no se conoce su tamaño a priori (antes del programa principal)

Observar:

  • Un array dinámico tiene que dimensionarse (hay que asignarle un tamaño) en el programa y no en la sección de declaración de variables(y esto siempre antes de ser utilizado en el programa).
  • Para hacer referencia a sus índices inferior y superior se utilizan las funciones low y high
 
Escribir en pantalla el contenido de un array dinámico utilizando un procedimiento.
   

 

1.8.4 Leer el contenido de un fichero de texto (el fichero debe crearse, con el Bloc de Notas por ejemplo, y hacer que contenga un único valor real en cada línea), almacenarlo en un array dinámico y escribir el contenido del array en pantalla

Resolver este ejercicio de dos formas distintas:

  1. En primer lugar, considerar conocido (como una constante) el número de líneas del fichero de texto (e.d. la cantidad de valores)
  2. A continuación, hacer el programa para que acepte ficheros de cualquier tamaño (Nota: es necesario conocer en el programa el número de líneas del fichero).
1.8.5 Crear un fichero de texto que contenga una tabla de frecuencias, almacenar su contenido en dos arrays dinámicos (uno para las frecuencias y otro para los valores) y mostrar la tabla en pantalla.
1.8.6 Definir funciones que tengan como parámetro de entrada un arrays dinámico de valores reales y que calculen la media, desviación típica y varianza de los valores contenidos en el array.