elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Ejercicios
| | | |-+  Necesito ayuda!! agenda electronica con archivos secuenciales creada en pascal
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Necesito ayuda!! agenda electronica con archivos secuenciales creada en pascal  (Leído 4,348 veces)
colillo

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Necesito ayuda!! agenda electronica con archivos secuenciales creada en pascal
« 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!


En línea

colillo

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Necesito ayuda!! agenda electronica con archivos secuenciales creada en pascal
« Respuesta #1 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:


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Archivos Secuenciales y Aleatorios
Programación Visual Basic
YEXBOND007 1 1,955 Último mensaje 18 Abril 2007, 16:15 pm
por ~~
Necesito ayuda en pascal
Programación General
W0lFy 5 4,321 Último mensaje 16 Junio 2014, 15:29 pm
por Hustler001
Pascal-Agenda
Ejercicios
h0oke 3 7,509 Último mensaje 5 Febrero 2010, 14:37 pm
por h0oke
Necesito ayuda con un ejercicio de turbo pascal
Programación General
Madsmarco 1 3,085 Último mensaje 10 Abril 2011, 22:17 pm
por skapunky
necesito ayuda con el ahorcado en pascal
Programación General
savag 7 6,519 Último mensaje 8 Octubre 2011, 20:27 pm
por savag
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines