Pascal/Turbo Pascal - Ayuda

   
Vista:

Ayuda

Publicado por Javi (4 intervenciones) el 01/05/2008 17:29:14
wenas a todos!!!!

tengo una duda importante, si se tiene un array de registros y en un parametro esta compuesto por otro registro como ago para almacenar un dato dentro?¿?suena rara por eso acompaño un codigo fuente:

CONST

MINFILA=1; {numero de la primera fila}
MAXFILA=25; {numero de la ultima fila}
PRIMERASIENTO='A'; {identifiacador primer asiento}
ULTIMOASIENTO='F'; {identifiacador ultimo asiento}
NCNOMBRE=15; {numero de caracteres nombre}
NCAPELLIDOS=35; {numero de caracteres apellidos}
NCPASAPORTE=10; {numero de caracteres pasaporte}
NCNACION=3; {numero de caracteres del identificador del pais}
MAXNUMMALETAS=10; {maximo numero de maletas que se pueden llevar}
NUMPASAJEROS=150; {numero de pasajeros del avion}

TYPE

TDia=1..31; {subrango para el dia de nacimiento}
TMes=1..12; {subrango para el mes del nacimiento}
TAnio=1900..2100; {subrango para el a¤o de nacimniento}
Tfilas=MINFILA..MAXFILA;
TColumnas=PRIMERASIENTO..ULTIMOASIENTO;

TFecha=RECORD
dia:TDia;
mes:TMes;
anio:TAnio;
end; {TFecha}

TNombre=string [NCNOMBRE]; {Tipo para almacenar el nombre}
TApellidos=string[NCAPELLIDOS]; {Tipo para almacenar apellidos}
TPasaporte=string[NCPASAPORTE]; {Tipo para almacenar le pasaporte}
TPais=string [NCNACION]; {Tipo para almacenar el pais}
TNumMaletas=0..MAXNUMMALETAS; {Tipo para almacenar el numero de maletas facturadas}
TNumPasajeros=0..NUMPASAJEROS;{Contiene el numero de pasajeros que lleve el avion}

TAsiento=RECORD
ocupado:boolean; {indica si esta o no ocupado el asiento}
nombre:TNombre;{nombre del pasajero}
apellidos:Tapellidos;{apellidos del pasajero}
pasaporte:TPasaporte;{numero del pasaporte}
pais:TPais; {nacionalidad}
fNacin:TFecha; {fecha de nacimiento}
numMaletas:TNumMaletas;{numero de maletas facturadas con las que viaja}
end;

TPasaje=ARRAY [Tfilas,TColumnas] Of TAsiento;{matriz que contiene el pasaje del avion}

TAvion=Record
numPasajeros:TNumPasajeros;
pasaje:TPasaje;
END;

vale si queremos escribir o almacenar los datos del parametro Fnacin y que ademas lo relacione con una cierta posicion del array, como lo ago?¿?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda

Publicado por Diego Romero (997 intervenciones) el 02/05/2008 00:40:41
No entiendo Fnacin no es un parámetro, es un registro dentro de otro registro.

A ver...

var
Avion: TAvion;

begin
...
Avion.pasaje[1,'A'].Fnacin.dia:=28;
Avion.pasaje[1,'A'].Fnacin.mes:=04;
Avion.pasaje[1,'A'].Fnacin.anio:=1975;

Y suponiendo que uses un procedimiento que sí usa parámetros sería:

procedure AlmacenarFechaNac(var Fn: TFecha);
begin
Fn.dia:=28;
Fn.mes:=04;
Fn.anio:=1975;
end;

Llamándose como...

AlmacenarFechaNac(Avion.pasaje[1,'A'].Fnacin);

por ejemplo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar