Título: Necesito ayuda!! agenda electronica con archivos secuenciales creada en pascal Publicado por: colillo en 1 Mayo 2012, 17:07 pm buenas soy nuevo por aquí espero aprender mucho =D, tengo un ejercicio que no tengo idea como empezar hacerlo, necesito algo de ayuda por favor.
este es el ejercicio: Crear un programa en Pascal que utilice archivos secuenciales para el mantenimiento de una agenda electrónica que guarde los siguientes datos de personas: - Cedula (String [10]), llave. - Nombre (String [40]) - Direccion (String [60]) - Telefono (Longint) - Fax (Longint) - Estado civil (String[10]) - Provincia (String [10]) Ningún número de cédula puede repetirse dentro del archivo. Deben crear un menú de acceso con procedimientos de insertar, modificar, eliminar y consultar personas; y salir del programa. si alguien me puede ayudar o darme una pista de como empezar lo agradezco mucho! Título: Re: Necesito ayuda!! agenda electronica con archivos secuenciales creada en pascal Publicado por: colillo en 1 Mayo 2012, 23:02 pm bueno hasta ahorita tengo montado lo siguiente del trabajo: :D
Program Agenda; uses crt; const ubicacion='d:\bp\bin\datos.txt'; type datos_personales = record nombre:string; apellido: string; edad:integer; numero_telefonico: string[8]; numero_celular: string[8]; direccion: string; fecha_cumpleanos:string; email:string; end; var opcion:char; info: datos_personales; arch: text; nombreABuscar: string; subNombre: string; entro: boolean; Procedure Imprimir; begin reset (arch); clrscr; while not eof (arch) do begin with info do begin readln(arch,nombre); readln(arch,apellido); readln(arch,edad); readln(arch,numero_telefonico); readln(arch,numero_celular); readln(arch,direccion); readln(arch,fecha_cumpleanos); readln(arch,email); writeln; writeln; writeln(nombre,' ',apellido); writeln('Tiene ',edad,'a¤os'); writeln('Tel‚fono: ',numero_telefonico); writeln('Celular: ',numero_celular); writeln('Direcci¢n: ',direccion); writeln('Fecha de Cumplea¤os: ',fecha_cumpleanos); writeln('E-mail: ',email); writeln; end; end; readkey; close (arch); end; Procedure Ingresar; begin append (arch); with info do begin writeln; writeln; write('Digite el nombre: '); readln(nombre); write('Digite el apellido: '); readln(apellido); write('Digite la edad: '); readln(edad); write('Digite el n£mero telef¢nico: '); readln(numero_telefonico); write('Digite el n£mero celular: '); readln(numero_celular); write('Digite la direcci¢n: '); readln(direccion); write('Digite la fecha de cumplea¤os: '); readln(fecha_cumpleanos); write('Digite el e-mail: '); readln(email); writeln(arch,nombre); writeln(arch,apellido); writeln(arch,edad); writeln(arch,numero_telefonico); writeln(arch,numero_celular); writeln(arch,direccion); writeln(arch,fecha_cumpleanos); writeln(arch,email); end; close(arch); end; Procedure Buscar; begin reset (arch); entro:=false; writeln; writeln; write('Digite una letra: '); nombreABuscar:=readkey; clrscr; while not eof (arch) do begin with info do begin readln(arch,nombre); readln(arch,apellido); readln(arch,edad); readln(arch,numero_telefonico); readln(arch,numero_celular); readln(arch,direccion); readln(arch,fecha_cumpleanos); readln(arch,email); subNombre:=Copy(nombre,1,length(nombreABuscar)); if(subNombre=nombreABuscar) then begin entro:=true; writeln; writeln; writeln(nombre,' ',apellido); writeln('Tiene ',edad,'a¤os'); writeln('Tel‚fono: ',numero_telefonico); writeln('Celular: ',numero_celular); writeln('Direcci¢n: ',direccion); writeln('Fecha de Cumplea¤os: ',fecha_cumpleanos); writeln('E-mail: ',email); writeln; end; end; end; if(not entro) then writeln('No se encontraron resultados para esta busqueda'); readkey; close (arch); end; Procedure Inicializar;cl begin rewrite (arch); close(arch); end; Procedure Seleccion; begin case opcion of '1': Ingresar; '2': Buscar; '3': Imprimir; '4': Inicializar; end; end; Procedure Menu; begin clrscr; writeln; writeln; gotoxy(35,6); writeln('MENU DE AGENDA'); writeln; writeln; gotoxy(25,7); writeln('1. Agregar Contactos'); gotoxy(25,9); writeln('2. Buscar Contactos'); gotoxy(25,11); writeln('3. Observar Contactos'); gotoxy(25,13); writeln('4. Inicializar Lista de Contactos'); gotoxy(25,15); writeln('5. Salir'); writeln; gotoxy(20,19); write ('Escoja una opci¢n: '); opcion:=readkey; end; Procedure Ciclo; begin Repeat Menu; Seleccion; Until (opcion='5'); end; Begin clrscr; assign (arch,ubicacion); Ciclo; End. pero necesito saber como hago un procedimiento de modificar, eliminar contactos en el archivo, por favor necesito ayuda ya son solo dos procedimientos lo que me hacen falta! :huh: |