Pascal/Turbo Pascal - S.O.S.!! Ayuda con estructura de datos

 
Vista:

S.O.S.!! Ayuda con estructura de datos

Publicado por Ely (5 intervenciones) el 14/11/2001 10:07:00
Hola,

Soy estudiante de sistemas y debo hacer un ejercicio en el cual tengo un archivo cuyos registros tienen la siguiente estructura:

1. NroCliente
2. NroFactura
3. Item:
3.1. Nro. Artículo
3.2. Importe Item
(no hay más de 20 ítems por factura)

La pregunta es cómo armo la estructura de datos del ítem, se puede utilizar un array dentro de un registro?

Desde ya muchas gracias!!!

Ely



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:S.O.S.!! Ayuda con estructura de datos

Publicado por Diego Romero (282 intervenciones) el 14/11/2001 19:41:09
Las soluciones son varias dependiendo de cómo debe ser la implementación. Siendo que los items de la factura nunca serán mas de 20 lo mas rápido es usar un array de registros.
type
titem=record
nro_articulo:integer;
importe:real;
end;
titems_factura=array[1..20] of titem;
...
var
items_factura:titems_factura;
...
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

Gracias.Tengo otra consulta

Publicado por Ely (5 intervenciones) el 15/11/2001 11:34:23
Hola,

Gracias por tu respuesta. Lo que me indicaste es correcto, pero mi duda es que cada registro del archivo es una factura, con todos sus datos inclusive los ítems.

Mi duda es si un campo de un registro puede ser de tipo array, es decir si ese array que estoy definiendo lo puedo usar para definir el tipo de un campo Item.

Otra vez gracias.

Ely
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

RE:Gracias.Tengo otra consulta

Publicado por Diego Romero (282 intervenciones) el 16/11/2001 21:57:46
Si.
Usando mi ejemplo anterior sería.
type
titem=record
nro_articulo:integer;
importe:real;
end;
titems_factura=array[1..20] of titem;

tfactura=record
nro_factura:integer;
items:titems_factura;
end;
...
var
factura:tfactura;
begin
factura.nro_factura:=1;
factura.items_factura[1].nro_articulo:=28;
factura.items_factura[1].precio:=50.00;
end.

Esto carga el item 1 de la factura 1 con el articulo codigo 28 y precio 50.00.
...
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