Type mistmacht!!!
Publicado por Ignacio (12 intervenciones) el 27/12/2007 17:44:25
Vamos a ver si consigo explicarme, tengo el siguiente programa que he definido todos estos datos (no se si estan bien o si se pueden definir de algun otro tipo)
Program Ejer;
Uses
CRT;
Type
TpProducto = Record
Identificador:string[2];
Precio:real;
NumCajas:integer;
FechaProducto:integer;
End;
TpAlmacen = Record
Almacen: Array[1...25] of TpProducto;
n:integer;
End;
{Con este procedimiento quiero indicar que el almacen no contiene ningun dato}
Procedure Vacio (Var v:TpAlmacen);
Begin
v.n:=0;
End;
{Con este procedimiento lo que quiero es que me muestre los datos que tengo de un producto en el almacen}
Procedure Mostrar (i:TpAlmacen);
Var
j:integer;
Begin
For j:=1 to i.n do
Begin
writeln(i.Almacen[j].Identificador);
writeln(i.Almacen[j].Precio);
writeln(i.Almacen[j].NumCajas);
writeln(i.Almacen[j].FechaProducto);
End;
End;
{Algoritmo principal}
Var
A:TpAlmacen;
P:TpProducto;
Begin
clrscr;
Vacio(A);
Mostrar(P);
readln;
End.
El problema es el siguiente, se supone que al decir que el almacen esta vacío es decir con valor cero cuando me muestre los datos del producto me tendria que dar valor cero y no me da. Me dice que he cometido un error de "Tipos no coinciden", Error 26. Yo lo que quiero es que al llamar al procedimiento mostrar me de que cada dato de TpProducto valor cero. El programa lo he hecho yo por lo que no se si me colado en la definicion de tipos de datos o algo. Haber si alguien me hecha una mano. Gracias
Program Ejer;
Uses
CRT;
Type
TpProducto = Record
Identificador:string[2];
Precio:real;
NumCajas:integer;
FechaProducto:integer;
End;
TpAlmacen = Record
Almacen: Array[1...25] of TpProducto;
n:integer;
End;
{Con este procedimiento quiero indicar que el almacen no contiene ningun dato}
Procedure Vacio (Var v:TpAlmacen);
Begin
v.n:=0;
End;
{Con este procedimiento lo que quiero es que me muestre los datos que tengo de un producto en el almacen}
Procedure Mostrar (i:TpAlmacen);
Var
j:integer;
Begin
For j:=1 to i.n do
Begin
writeln(i.Almacen[j].Identificador);
writeln(i.Almacen[j].Precio);
writeln(i.Almacen[j].NumCajas);
writeln(i.Almacen[j].FechaProducto);
End;
End;
{Algoritmo principal}
Var
A:TpAlmacen;
P:TpProducto;
Begin
clrscr;
Vacio(A);
Mostrar(P);
readln;
End.
El problema es el siguiente, se supone que al decir que el almacen esta vacío es decir con valor cero cuando me muestre los datos del producto me tendria que dar valor cero y no me da. Me dice que he cometido un error de "Tipos no coinciden", Error 26. Yo lo que quiero es que al llamar al procedimiento mostrar me de que cada dato de TpProducto valor cero. El programa lo he hecho yo por lo que no se si me colado en la definicion de tipos de datos o algo. Haber si alguien me hecha una mano. Gracias
Valora esta pregunta


0