Añadir+números+a+una+lista+(preguntando+antes+de+leer+cada+número)

=__**Añadir números a una lista (preguntando antes de leer cada número)**__=

code format="pascal" PROGRAM ARR_2 ; CONST iLONG_FISICA = 100 ; TYPE taiVectores = ARRAY [1 .. iLONG_FISICA] OF Integer ;

PROCEDURE AniadirNumerosALista (VAR aiLista : taiVectores ; VAR iLongitud : Integer); VAR cResp : Char ; BEGIN Write ('Introducir un numero (S/N): ') ; Readln(cResp) ;

WHILE (Upcase (cResp) = 'S') AND (iLongitud < iLONG_FISICA) DO BEGIN iLongitud := iLongitud + 1 ;

Write ('Numero ', iLongitud:2, ': ') ; Readln (aiLista [iLongitud]) ;

IF iLongitud < iLONG_FISICA THEN BEGIN Write ('Introducir otro número (S/N): '); Readln(cResp) ; END ; END ; END ;

PROCEDURE MostrarNumeros (CONST aiLista : taiVectores ; iLongitud : Integer); VAR i : Integer ; BEGIN FOR i := 1 TO iLongitud DO Write (aiLista [i] : 8 ) ;

Writeln ; END ;

{- Variables del programa principal --} VAR aiLista : taiVectores ; iLongitud : Integer ;

BEGIN {************* PROGRAMA PRINCIPAL ***********************}

iLongitud := 0 ; { Inicializar la lista como vacía }

Writeln ('Escribe los números de la lista:') ; Writeln ; AniadirNumerosALista (aiLista, iLongitud) ;

Writeln ; IF iLongitud > 0 THEN BEGIN WriteLn ('Lista de los numeros leidos: ') ; MostrarNumeros (aiLista, iLongitud) ; END ELSE Writeln ('Error: No has introducido ningun numero');

Writeln ; ReadLn ;

END. { FIN de Arr_2.PAS } code