Pascal/Turbo Pascal - Archivos

   
Vista:

Archivos

Publicado por @NDRES (2 intervenciones) el 25/04/2008 20:57:46
tengo un problema: estoy realizando un programa que maneja archivos en turbo pascal 7.0 pero al momento de correrlo me tira un error que no encuentra el archivo ya revise todo y esta bien

porfavor ayudenme.
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:Archivos

Publicado por eli (15 intervenciones) el 25/04/2008 22:54:34
Si envia el codigo se podra ayudar...
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

Archivos

Publicado por @NDRES (2 intervenciones) el 29/04/2008 20:27:11
este es el codigo de mi programa el nombre de usuario que se debe ingresar es "administracion" y la clave es "control"
espero con estro puedan ayudarme gracias

Program Proyecto;
Uses Crt;
Const
admin='control';
ven='vntaz';
Var
clientes,proveedores,facturas:text;
a,x,y:integer;
r:char;
usuar,contra,come:String;
procedure carga;
var
a:integer;
begin
gotoxy(20,25);
write('Espere Cargando aplicacion');
for a:=1 to 10 do
begin
delay(100);
write('.');
end;
end;
procedure reinicio(var x,y:integer);
begin
x:=3;
y:=5;
end;
procedure ubicacion(var x,y:integer);
Begin
y:=y+1;
gotoxy(x,y);
End;
procedure marco;
var
Colum,Fila,a:integer;
Begin
clrscr;
For a:= 2 to 79 do
Begin
Gotoxy(a,1);
write('_');
Gotoxy(a,4);
write('_');
GOtoxy(a,48);
write('_');
End;
For a:= 2 to 48 do
begin
Gotoxy(1,a);
write('|');
Gotoxy(80,a);
write('|');
End;
End;
procedure usuar_contra;
begin
usuar:=' ';
Reinicio(x,y);
While (usuar<>'administracion') and (usuar<>'ventas') Do
Begin
gotoxy(35,3);
write('Ingreso Tipo Usuario');
ubicacion(x,y);
Write('Ingrese Nombre de Usuario');
ubicacion(x,y);
Readln(usuar);
If (usuar<>'administracion') and (usuar<>'ventas') Then
Begin
ubicacion(x,y);
Write('El Usuario No existe');
delay(100);
marco;reinicio(x,y);
End;
End;
marco;
reinicio(x,y);
Contra:=' ';
While (contra<>admin) and (contra<>ven) do
Begin
gotoxy(35,3);
writeln('Ingreso Contrase¤a');
ubicacion(x,y);
Write('Ingrese su contrase¤a');
ubicacion(x,y); textcolor(black);
Readln(contra);
textcolor(white);
If (contra<>admin) and (contra<>ven) Then
begin
ubicacion(x,y);
Write('contrase¤a Incorrecta');delay(100);
marco; reinicio(x,y);
end
Else
If ((usuar='administracion') and (contra=ven)) or ((usuar='ventas') and (contra=admin)) Then
Begin
ubicacion(x,y);
Write('La contrase¤a no coiside con el Usuario');
contra:=' '; delay(100);
marco; reinicio(x,y);
End;
End;
end;
procedure validar_r(come:string; var r:char);
Begin
r:='a';
while (r<>'s')and(r<>'S')and(r<>'n')and(r<>'N') do
begin
ubicacion(x,y);
write('Desea ',come,' s/n');
ubicacion(x,y);
readln(r);
end;
End;
procedure administrador(var clientes:text);
var
nombre,direccion,nit:string;
codigo:integer;
begin
Marco;
gotoxy(30,3);
write('Bienvenido Administrador');
ubicacion(x,y);
reset(clientes);
while eof(clientes) do
begin
readln(clientes,nombre);
readln(clientes,direccion);
readln(clientes,nit);
readln(clientes,codigo);
writeln(clientes,nombre);
readln(clientes,direccion);
readln(clientes,nit);
readln(clientes,codigo);
end;
close(clientes);
end;
procedure ventas;
begin
end;
Begin
assign(clientes,'clientes.txt');
Repeat
marco;
gotoxy(35,3);
write('Bienvenido');
carga;
marco;
usuar_contra;
marco;
carga;
if usuar='administracion' then
administrador(clientes)
else
ventas;
come:='continuar con otro tipo de usuario';
marco;
validar_r(come,r);
until (r='n')or(r='n');
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:Archivos

Publicado por Diego Romero (997 intervenciones) el 29/04/2008 23:03:08
Simple. Te da ese error porque el archivo "clientes.txt" no existe, en ninguna parte haces un rewrite(clientes) por ejemplo.
Además deberías estudiar muy bién qué estás haciendo en el procedimiento ardministrador() porque veo cosas como querer leer un string del archivo en un tipo integer. Además pareces usar el archivo de tipo text como si fuera de acceso aleatorio y eso no es posible.
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