Pascal/Turbo Pascal - NECESITO AYUDA CON MI PROYECTO URGENTE

 
Vista:

NECESITO AYUDA CON MI PROYECTO URGENTE

Publicado por maria rodriguez (9 intervenciones) el 25/01/2012 03:16:47
crear una plataforma informatica del BNU (banco nacional universitario) basada en las siguientes caracteristicas:
*Se deben manejar los datos tanto de los clientes del banco como de sus cuentas
*De cada cliente, se requieren conocer al mnos 5 caracteristicas de informacion, incluyendo obligatoriamnte su cedula, su apellido y su nombre.
*cada cuenta se identifica mediante un codigo unico, que puede asumirse de 6 caracteres o digitos. cada cuenta tiene un sal en Bs que representa una cantidad de dinero
*Un cliente puede abrir varias cuentas en el banco, pero cada cuenta pertenece a un solo cliente
*todo cliente debe tener una cedula. y no se permite q un cliente se registre 2 vcs en el banco

DEBE REALIZAR LAS SIGUIENTES OPERACIONES:
*Registrar un nuevo cliente
->el sistema debe verificar q el cliente no este registrado previamente en el banco
*Abrir una cuenta
-> el sistema debe verificar q el cliente ya este registrado en el banco
-> el sistema debe verificar q la nueva cuenta no tenga codigo otra cuenta ya existente
-> el sistema abre la cuenta con un saldo de cero bolivares (0bs)
*Cerrar una cuenta
-> el sistema debe verificar q la cuenta tenga un saldo de 0bs
*Consultar estado de una cuenta
-> el sistema ubica la cuenta segun su codigo. ->Debe indicar en pantalla los datos dl cliente y la cuenta (incluyendo saldo actual). *Depositar en una cuenta. *Retirar de una cuenta.
*Consultar datos de un cliente: -> el sistema muestra todos los codigos y saldos de las cuentas de un cliente especifico.
*Consultar movimientos de una cuenta: ->Se listan los datos del cliente, el saldo actual de la cuenta existente y para cada operacion con esa cuenta:el tipo y monto d operacion y saldo d cta al finalizar cada operacion. NOTA: NO HAY LIMITES DE USUARIOS, CUENTAS Y OPERACIONES
DEBEN USARSE: menus, procedimientos/ funciones, REGISTROS y ARCHIVOS.
MOSTRAR MENSAJES DE ERROR SI SE INTENTAN OPERACIONES NO CORRESPONDIDAS.!!
------ POR FAVOR 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

NECESITO AYUDA CON MI PROYECTO URGENTE

Publicado por maria rodriguez (9 intervenciones) el 25/01/2012 03:30:11
AYUDENME URGENTE!! EL PROYECTO ES PARA EL 30/01 =(
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

NECESITO AYUDA CON MI PROYECTO URGENTE

Publicado por ramon (2158 intervenciones) el 25/01/2012 21:50:04
{Mira si esta forma te valdría seria basado sobre archivo todo el proceso o lo quieres mas complejo
por ejemplo sobre arrays o sobre punteros dime si el registro podía ser como este}

program banca;
uses
crt;
type
cliente = record
cedula : string[50];
nombre : string[40];
apellido1 : string[40];
apellido2 : string[40];
codigo : string[6];
Bs : real;
end;

var
cuenta : cliente;
f : file of cliente;


procedure Registrar_nuevo_cliente;
begin
clrscr;
writeln('*** Registrar_nuevo_cliente ***');
writeln('<<<< Pulse Enter >>>>');
readln;
clrscr;
end;

procedure Abrir_una_cuenta;
begin
clrscr;
writeln('*** Abrir_una_cuenta ***');
writeln('<<<< Pulse Enter >>>>');
readln;
clrscr;
end;

procedure Cerrar_una_cuenta;
begin
clrscr;
writeln('*** Cerrar_una_cuenta ***');
writeln('<<<< Pulse Enter >>>>');
readln;
clrscr;
end;

procedure Consultar_estado_cuenta;
begin
clrscr;
writeln('*** Consultar_estado_cuenta ***');
writeln('<<<< Pulse Enter >>>>');
readln;
clrscr;
end;

procedure Consultar_datos_cliente;
begin
clrscr;
writeln('*** Consultar_datos_cliente ***');
writeln('<<<< Pulse Enter >>>>');
readln;
clrscr;
end;

procedure Consultar_movimientos_cuenta;
begin
clrscr;
writeln('*** Consultar_movimientos_cuenta ***');
writeln('<<<< Pulse Enter >>>>');
readln;
clrscr;
end;

procedure marcador(px, py : integer; estado : boolean);
begin
if estado = true then
begin
gotoxy(px - 1,py - 1);write('------------------------------');
gotoxy(px - 2,py);write('|');
gotoxy(px + 29,py);write('|');
gotoxy(px - 1,py + 1);write('------------------------------');
end
else
begin
gotoxy(px - 1,py - 1);write(' ');
gotoxy(px - 2,py);write(' ');
gotoxy(px + 29,py);write(' ');
gotoxy(px - 1,py + 1);write(' ');
end;
end;

procedure menu;
var
opcion : integer;
tecmen : char;
salir : boolean;
x, y : integer;
begin
opcion := 1;
salir := false;
x := 5;
y := 5;
repeat
gotoxy(5,2);write('$$$$ Menu banco nacional universitario $$$$');
gotoxy(5,5);write('Registrar nuevo cliente');
gotoxy(5,7);write('Abrir cuenta');
gotoxy(5,9);write('Cerrar cuenta');
gotoxy(5,11);write('Consultar estado cuenta');
gotoxy(5,13);write('Consultar datos cliente');
gotoxy(5,15);write('Consultar movimientos cuenta');
gotoxy(5,17);write('Salir');
gotoxy(5,20);write('Use Las Teclas De [',chr(24),chr(25),'] y Enter');
marcador(x,y,true);
tecmen := readkey;
marcador(x,y,false);
if tecmen = #72 then
begin
opcion := opcion - 1;
if opcion < 1 then
opcion := 1;
y := y - 2;
if y < 5 then
y := y + 2;
end;
if tecmen = #80 then
begin
opcion := opcion + 1;
if opcion > 7 then
opcion := 7;
y := y + 2;
if y > 5 + 12 then
y := y - 2;
end;
if tecmen = #13 then
begin
case opcion of
1 : Registrar_nuevo_cliente;
2 : Abrir_una_cuenta;
3 : Cerrar_una_cuenta;
4 : Consultar_estado_cuenta;
5 : Consultar_datos_cliente;
6 : Consultar_movimientos_cuenta;
7 : salir := true;
end;
end;
until salir = true;
end;


begin
clrscr;
menu;
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

NECESITO AYUDA CON MI PROYECTO URGENTE

Publicado por maria rodriguez (9 intervenciones) el 26/01/2012 00:24:58
Gracias..!! pss si tiene q estar basado en archivos..!! muchas gracias por tu ayuda!! de verdad!
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

NECESITO AYUDA CON MI PROYECTO URGENTE

Publicado por ramon (2158 intervenciones) el 26/01/2012 18:54:26
{Parte de registros y entrada de datos y verificación de códigos}

program banca;
uses
crt;
type
ingresos = record
fecha1 : array[1..3] of word;
cantidad : real;
end;

movimientos = record
fecha2 : array[1..3] of word;
motibo : string[60];
importe : real;
end;

cliente = record
cedula : string[50];
nombre : string[40];
apellido1 : string[40];
apellido2 : string[40];
codigo : string[6];
Bs : real;
ingre : ingresos;
movim : movimientos;
end;

string6 = string[6];
string50 = string[50];



var
cuenta : cliente;
f : file of cliente;


function existecliente(codig : string6) : boolean;
var
paso, tama : longint;
saltrue : boolean;
begin
existecliente := false;
saltrue := false;
assign(f,'c:\tp\clientes.dat');
{$I-} reset(f); {$I+}
if ioresult <> 0 then
begin
exit;
end
else
begin
tama := filesize(f) - 1;
paso := 0;
repeat
seek(f,paso);
read(f,cuenta);
if cuenta.codigo = codig then
begin
saltrue := true;
end;
paso := paso + 1;
until (paso > tama) or (saltrue = true);
close(f);
if saltrue = true then
begin
existecliente := true;
end;
end;
end;

function existecedula(cedu : string50) : boolean;
var
tama, paso : longint;
sal : boolean;
begin
sal := false;
existecedula := false;
assign(f,'c:\tp\clientes.dat');
{$I-} reset(f); {$I+}
if ioresult <> 0 then
begin
exit;
end
else
begin
tama := filesize(f) - 1;
paso := 0;
repeat
seek(f,paso);
read(f,cuenta);
if cuenta.cedula = cedu then
begin
sal := true;
end;
paso := paso + 1;
until (paso > tama) or (sal = true);
close(f);
if sal = true then
begin
existecedula := true;
end;
end;
end;

procedure Registrar_nuevo_cliente;
var
codigo1 : string[6];
sino : char;
begin
clrscr;
gotoxy(12,2);write('*** Registrar_nuevo_cliente ***');
gotoxy(12,4);write('Entre Codigo Nuevo Cliente : ');
gotoxy(41,4);readln(codigo1);
if existecliente(codigo1) then
begin
clrscr;
gotoxy(12,4);write('El Cliente Existe');
end
else
begin
clrscr;
gotoxy(12,2);write('*** Entrada Datos Cliente ***');
gotoxy(12,4);write('Cedula : ');
gotoxy(12,5);write('Nombre : ');
gotoxy(12,6);write('1§ Apellido : ');
gotoxy(12,7);write('2§ Apellido : ');
gotoxy(12,8);write('Codigo : ');
gotoxy(26,4);readln(cuenta.cedula);
if existecedula(cuenta.cedula) = true then
begin
clrscr;
gotoxy(12,2);write('La Cedula Entrado Existe Entre Nuevo Cedula');
gotoxy(12,4);write('Cedula : ');
gotoxy(26,4);readln(cuenta.cedula);
if existecedula(cuenta.cedula) = true then
begin
clrscr;
gotoxy(12,2);write('La Cedula Entrada Existe Rebise el Cedula');
gotoxy(12,4);write('***** Pulse Enter *****');
readln;
exit;
end;
end;
gotoxy(26,5);readln(cuenta.nombre);
gotoxy(26,6);readln(cuenta.apellido1);
gotoxy(26,7);readln(cuenta.apellido2);
gotoxy(26,8);write(codigo1);
cuenta.codigo := codigo1;
end;
gotoxy(12,12);write('Las Entradas Son Correctas [S/N]');
repeat
sino := readkey;
until sino in['n','N','s','S'];
if sino in['n','N'] then
begin
Registrar_nuevo_cliente;
end
else
begin
assign(f,'c:\tp\clientes.dat');
{$I-} reset(f); {$I+}
if ioresult <> 0 then
begin
rewrite(f);
seek(f,0);
write(f,cuenta);
close(f);
end
else
begin
seek(f,filesize(f));
write(f,cuenta);
close(f);
end;
end;
clrscr;
end;
procedure marcador(px, py : integer; estado : boolean);
begin
if estado = true then
begin
gotoxy(px - 1,py - 1);write('------------------------------');
gotoxy(px - 2,py);write('|');
gotoxy(px + 29,py);write('|');
gotoxy(px - 1,py + 1);write('------------------------------');
end
else
begin
gotoxy(px - 1,py - 1);write(' ');
gotoxy(px - 2,py);write(' ');
gotoxy(px + 29,py);write(' ');
gotoxy(px - 1,py + 1);write(' ');
end;
end;

procedure menu;
var
opcion : integer;
tecmen : char;
salir : boolean;
x, y : integer;
begin
opcion := 1;
salir := false;
x := 5;
y := 5;
repeat
gotoxy(5,2);write('$$$$ Menu banco nacional universitario $$$$');
gotoxy(5,5);write('Registrar nuevo cliente');
gotoxy(5,7);write('Abrir cuenta');
gotoxy(5,9);write('Cerrar cuenta');
gotoxy(5,11);write('Consultar estado cuenta');
gotoxy(5,13);write('Consultar datos cliente');
gotoxy(5,15);write('Consultar movimientos cuenta');
gotoxy(5,17);write('Salir');
gotoxy(5,20);write('Use Las Teclas De [',chr(24),chr(25),'] y Enter');
marcador(x,y,true);
tecmen := readkey;
marcador(x,y,false);
if tecmen = #72 then
begin
opcion := opcion - 1;
if opcion < 1 then
opcion := 1;
y := y - 2;
if y < 5 then
y := y + 2;
end;
if tecmen = #80 then
begin
opcion := opcion + 1;
if opcion > 7 then
opcion := 7;
y := y + 2;
if y > 5 + 12 then
y := y - 2;
end;
if tecmen = #13 then
begin
case opcion of
1 : Registrar_nuevo_cliente;
2 : Abrir_una_cuenta;
3 : Cerrar_una_cuenta;
4 : Consultar_estado_cuenta;
5 : Consultar_datos_cliente;
6 : Consultar_movimientos_cuenta;
7 : salir := true;
end;
end;
until salir = true;
end;


begin
clrscr;
menu;
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

NECESITO AYUDA CON MI PROYECTO URGENTE

Publicado por maria rodriguez (9 intervenciones) el 27/01/2012 01:52:18
GRACIAS....!!!! XD
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