Puedes poner aquí el código, no hace falta un un archivo adjunto. Lo copio y lo pego:
Código Delphi
[-] program eix4s13VERSIONOK;
{$APPTYPE CONSOLE}
uses
SysUtils;
CONST
nMAx = 100;
marca = -1;
nominalMax=10000;
TYPE
tnumMostres = 1..nMax;
tmostres = ARRAY[tnumMostres] OF REAL;
tMostradia = RECORD
nCont: 0..nMax;
dades: tMostres;
END;
Tindex=1..nominalMax;
tLlista=ARRAY [TIndex]of REAL ;
VAR
mevaLlista: tMostradia;
miLlista:TLlista;
tolerancia,max, min: REAL;
numNominal:TLlista;
PROCEDURE LlegirLlista( OUT unaLlista:tMostradia);
VAR
mostres, i: integer;
BEGIN
i:=0 ;
REPEAT
Write('- Entri una mostra i premi ENTER: ',i+1:3,'= ');
Readln(mostres);
IF mostres <> marca
THEN
BEGIN
i:= i+1;
unaLlista.dades[i]:= mostres;
END;
UNTIL (mostres = marca) OR (i=nMAx);
unaLlista.nCont:=i;
writeln('> Memoria llena presione ENTER <'); readln;
END;
PROCEDURE MostrarLlista (unaLlista: tMostradia);
VAR i:INTEGER;
BEGIN
i:=1;
FOR i:=1 TO mevaLlista.nCont
DO
BEGIN
Writeln('Mostra ', i:3, '=', mevaLlista.dades[i]:6:2);
END;
i:= i +1 ;
END;
FUNCTION fPromig(unaLlista:tMostradia): REAL;
VAR
i: INTEGER;
s: REAL;
BEGIN
i:=1;
s:=0;
FOR i:=1 TO unaLlista.nCont
DO
s:= s + unaLlista.dades[i];
i:=i+1;
RESULT:=(s/unaLlista.nCont);
END;
PROCEDURE pMaxMin(unaLlista:tMostradia; OUT unMAX, unMIN: REAL);
VAR
i:INTEGER;
BEGIN
i:=1;
FOR i:=1 TO unaLlista.nCont
DO
BEGIN
IF unaLlista.dades[i] < unMIN
THEN
unMIN:= unaLlista.dades[i]
ELSE
IF unaLlista.dades[i] > unMAX
THEN
unMAX:= unaLlista.dades[i];
END;
i:= i+1 ;
END;
FUNCTION fTolerancia (unaLlista:tMostradia):real;
var
tol, tolmax,tolmin,max,min:real;
begin
pMaxMin(unaLlista,max,min);
tolmax:=abs(unaresist-max);
tolmin:=abs(unaresist-min);
if tolmax > tolmin
THEN
tol:=tolmax
else
tol:=tolmin;
fTolerancia:=tol;
end;
begin
Writeln('ALUMNO:CESAR ZAPATA');
Writeln('PROFESOR : FERRAN VIRGOS');
Writeln('GRUPO : T44');
Writeln(' ');
Writeln('Programa que registra muestras y ');
Writeln('da el calculo promedio, un maxim i un minimo');
writeln;
Writeln('# Introduce las muestras hasta un maximo de ',nMAx,' registros #');
Writeln('# Para finalizar la introduccion de notas poner una nota con el valor: ',marca,' #');
writeln;
LlegirLlista ( mevaLlista );
Writeln; Writeln ('MUESTRAS') ;
MostrarLlista ( mevaLlista );
Writeln; Writeln('el promedio es: ' ,fPromig(mevaLlista):6:2);
pMaxMin(mevaLlista, max, min);
Writeln ('El Max es: ', max:6:2,' i el Min es: ', min:6:2);
tolerancia:=(ftolerancia(mevaLlista))/100;
Writeln('Y para finalizar mostramos la tolerancia :',tolerancia:8:4);
Writeln;
Writeln;
Writeln('GRACIAS POR USAR ESTE PROGRAMA '); Writeln;
Write('Prem ENTER per sortir');
Readln;
end.