Pascal/Turbo Pascal - Regitros!!!! Ayuda...

 
Vista:

Regitros!!!! Ayuda...

Publicado por jose luis (12 intervenciones) el 15/01/2005 19:08:46
HOla, tengo hecho este ejercicio en Pascal, pero no me imprime todos los campos del registro, este es:

program registros;
uses crt;

Type
itemstock=record
codigo: string[3];
nombre: string[20];
uni_almacen:integer;
uni_stock:integer;
end;

lista=array[1..3] of itemstock;

var
almacen:lista;
i,j:integer;

procedure grabarRegistro(var item:itemstock);

begin
clrscr;
writeln('introduzca codigo del producto: ');
readln(item.codigo);
writeln('introduzca nombre del producto: ');
readln(item.nombre);
writeln('Introduzca unidades en stock: ');
readln(item.uni_stock);
writeln('introduzca unidades en almacen: ');
readln(item.uni_almacen);
end;

procedure pintarRegistro(var item:itemstock);

begin
for j:=1 to 3 do
j:=j+2;
gotoxy(2,j);
write(item.codigo);
gotoxy(7,j);
write(item.nombre);
gotoxy(32,j);
write(item.uni_stock);
gotoxy(42,j);
write(item.uni_almacen);
readkey;
end;

begin
clrscr;
for i:=1 to 3 do
grabarRegistro(almacen[i]);
pintarRegistro(almacen[i]);
end.

Si alguien puede decirme que poner para que imprima todos los campos, gracias.
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:Regitros!!!! Ayuda...

Publicado por Diego Romero (786 intervenciones) el 15/01/2005 21:57:04
El for del principal está mal cerrado, debería ser
for i:=1 to 3 do
begin
grabarRegistro(almacen[i]);
pintarRegistro(almacen[i]);
end;
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:Regitros!!!! Ayuda...

Publicado por jose luis (12 intervenciones) el 16/01/2005 00:48:20
Hola, sigue sin funcionar, lo que realmente quiero que haga el programa es que me pida el codigo, nombre... etc; 3 veces, y despues imprima los 3 codigos, 3 nombres, 3 unidades... a la vez...
Si alguien puede ayudarme....
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:Regitros!!!! Ayuda...

Publicado por Diego Romero (786 intervenciones) el 17/01/2005 06:32:15
Acabo de darme cuenta que también te falta un par begin end en el procedimiento pintarRegistro que encierre las sentencias que se ejecutan dentro del for:
begin
for j:=1 to 3 do
begin { <-- abre el for }
j:=j+2;
gotoxy(2,j);
write(item.codigo);
gotoxy(7,j);
write(item.nombre);
gotoxy(32,j);
write(item.uni_stock);
gotoxy(42,j);
write(item.uni_almacen);
end; { <-- cierra el for }
readkey;
end;
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:Regitros!!!! Ayuda...

Publicado por jose luis (12 intervenciones) el 17/01/2005 11:22:39
Todavia sigue sin hacer lo que quiero que haga este programa, he puesto el Begin End; donde dices, pero sigue sin imprimirlo bien.
Lo que quiero es que el usuario introduzca los campos 3 veces cada 1, y luego a continuacion los imprima tal que asi:

1 raton 2 4
2 coche 3 3
3 vaso 5 1

Asi es como quiero que imprima el registro, y solo me imprime la ultima fila de campos;
Gracias por ayudarme.
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:Regitros!!!! Ayuda...

Publicado por Jose luis (12 intervenciones) el 17/01/2005 11:29:09
Le he quitado el j:=j+2; del procedimiento pintarregistro; y ya me pinta tres veces pero solo el ultimo campo; seguire mirando.
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