Dev - C++ - AYUDA A DESARROLLAR ESTE PROGRAMA DE CUENTAS BANCARIAS

 
Vista:
sin imagen de perfil

AYUDA A DESARROLLAR ESTE PROGRAMA DE CUENTAS BANCARIAS

Publicado por Josue Enrique (3 intervenciones) el 10/07/2021 22:23:55
Cuentas Bancarias
Crear Cuenta: El programa solicitará información del usuario, Su nombre, numero de identidad, beneficiario y una clave.
Una vez introducida la información el programa generará un numero de cuenta, que será el que el usuario tendrá como su identificación en el banco y será el necesario para poder realizar los movimientos bancarios.
Con ese numero de cuenta el programa generará un archivo de texto, en el que guardará la información del usuario y los movimientos bancarios que vaya realizando. Se podrían crear un archivo para guardar la información y el estado actual de la cuenta y otro para guardar los movimientos bancarios.
Además, se guardará en el archivo de registros del cajero banco el mensaje de ser creo una cuenta, el numero de cuenta, el nombre del cliente.
Depósitos: Para llevar a cabo un depósito, la aplicación solicitará el numero de cuenta y la cantidad de dinero que se depositará y la fecha, está información será almacenada en el archivo correspondiente al número de cuenta. La información que se guardará será, fecha, Cajero, “Movimiento deposito”, monto inicial, monto deposito, monto final.
Además, se guardará en el archivo de registros del cajero banco.
Si la cuenta no existe se notificará y se regresará al menú principal.
Retiros: Para poder efectuar un retiro, se solicitará el número de cuenta, la fecha, la cantidad de dinero a retirar y la clave del usuario. Primero se verifica si la clave concuerda con la provista por el cliente al crear la cuenta si esto es cierto, se pasará a verificar si el monto de la cuenta cubre el retiro que se desea llevar a cabo y sí esto se cumple se realizará un cambio en el archivo agregando la información. La información que se guardará será, fecha, Cajero, “Movimiento retiro”, monto inicial, monto retirado, monto final.
Además, se guardará en el archivo de registros del cajero banco.
Si la cuenta no existe se notificará y se regresará al menú principal.
Revisar Saldos: Para revisar saldos solamente me pedirá el numero de cuenta y la clave entregada al crearse la cuenta.
Este me mostrará los movimientos registrados por cliente y al final el monto actual en la cuenta.

Divisas
Comprar Dólares: Tomará del archivo de configuración del programa el valor de la compra de dólares. Se le pedirá al usuario que ingrese la cantidad de dólares que desea comprar y la fecha, se convertirá en el valor a lempiras. Esta transacción se guardará en el archivo de registros del cajero banco como compra de dólares, se agregará la fecha, monto en lps y monto en dólares.
Venta de Dólares: Similar a la anterior, solo que el mensaje dirá venta de dólares
Comprar Euros: Similar a la comprar de dólares
Venta Euros: Similar a la venta de dólares

Préstamos
Otorgar Préstamo: Se solicitarán los datos personales del cliente, se le asignará un numero de préstamo el cual servirá para hacer pagos y revisión de saldo. Esta transacción se guardará en el archivo de registros del cajero banco como asignación de préstamo, se agregará la fecha y monto prestado.

Pagar a Préstamo: Se solicitará el número de préstamo y el monto a pagar, se debe verificar si el monto a pagar excede lo adeudado, de ser así se le notificará cuando es lo adeudado y se efectuará el cobro por ese monto. Pagar préstamo deberá actualizar el valor adeudado por el cliente y agregar en el archivo del préstamo el registro con los siguientes datos, fecha, Cajero, “Pago a Préstamo”, monto inicial, monto pagado, monto final.
Esta transacción también se guardará en el archivo de registro del cajero como pago de préstamo, se agregará la fecha y monto prestado.

Revisión de Saldos: Solicitará el número de préstamo y se mostrará el monto inicial de préstamo, la fecha en que se solicitó y el monto adeudado. Se le preguntará si quiere ver el historial de pagos si responde que si se mostrarán todos los pagos que se hayan hecho en ese préstamo.

Configuración
En configuración es donde se configurará la aplicación, aquí crearemos y eliminaremos usuarios, actualizaremos contraseñas de usuarios y actualizaremos la tasa de cambio de las divisas.
Crear usuario: Se solicitará que ingrese el usuario, la contraseña y el tipo de usuario (Puede ser Admin o Cajero) y se creará el usuario lo cual consiste en actualizar el archivo del listado de usuarios con 3 valores, usuario, contraseña y tipo de usuario. Al crear usuario tipo cajero, se creará un archivo para los registros del cajero, donde se almacenará todas las transacciones del usuario.
Eliminar usuario: Se solicitará el nombre de usuario y se dará de baja lo cual consiste en cambiar el tipo de usuario a “eliminado”.
Actualizar Contraseña: Se solicitará el nombre de usuario y la nueva contraseña y se actualizará el valor en el archivo de usuarios.
Actualizar Tasa de Cambio: Se solicitará el valor de compra y venta de Euro y Dólar y se almacenará en un archivo de configuración.

• La opción de configuración es exclusiva para el usuario tipo Admin.
• La aplicación solicitará usuario y contraseña para iniciar
• Habrá un usuario default para la primera vez que se inicie la aplicación.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
-1
Responder
sin imagen de perfil
Val: 317
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

AYUDA A DESARROLLAR ESTE PROGRAMA DE CUENTAS BANCARIAS

Publicado por Miguel (215 intervenciones) el 13/07/2021 18:45:14
Y cual es la pregunta en especifico, agrega el codigo que lleves al momento, planifica como implementaras tu problema y ve codificando paso por paso, cualquier problema agrega aqui tu pregunta.
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

AYUDA A DESARROLLAR ESTE PROGRAMA DE CUENTAS BANCARIAS

#include<iostream>

using namespace std;

void Ejecutar();
class Cuenta
{
private:
double Saldo;
double Depositar;
double Retirar;
int Opcion;

public:
Cuenta(double saldo=0,double depositar=0,double retirar=0,int opcion=0);
double saldo(double retiro,double deposito,double saldot);
double deposit(double saldot);
double retiro(double saldot);
double opcion(int opcion1, double saldot);
double saldot(void);
double transferencia(double saldot);
double pagoDeServicios(double saldot);
double RecargaCelular(double saldot);
void Ejecutar();
}; //finalizacion de la clase

void Cuenta(double saldo, double depositar, double retirar, int opcion)
{
}//finnalizacion del constructor

double Cuenta::saldo(double retiro,double deposito,double saldot)
{
system("cls");
saldot=saldot+deposito-retiro;
return saldot;
}//fin de saldo

double Cuenta::deposit(double saldot)
{
Cuenta C;
double dep=0;
char sn;
double saldototal;
do
{
Deposito:
system("cls");
cout<<"Ingrese la Cantidad a Depositar:";
cin>>dep;

while(dep<=0)
{

cout<<"Desea Ingresar Un Valor Valido s = si n = no:";
cin>>sn;
if(sn=='S'||sn=='s')
goto Deposito;
else
cout << "el deposito es cero";
//salir(0);// no se encuentra esta funcion
}

saldototal = saldo(0,dep,saldot);
cout<<"Desea Realizar otro Deposito s= si n= no:";
cin>>sn;
}while(sn=='S'|| sn=='s');

return saldototal;
}//finalizacion de deposito

double Cuenta::retiro(double saldot)
{
double retir=0;
char sn;
system("cls");
if(saldot==0)
{
cout<<"Usted no Cuenta con Saldo Disponible \n";
cout<<"Desea Realizar otra Operacion s/S n/N :";
cin>>sn;
if(sn=='S'||sn=='s')
{
system("cls");
Ejecutar();
}
else
cout << "el deposito es cero";
//salir(0);// no se encuentra esta funcion
}
do
{
Retiro:
system("cls");
cout<<"Ingrese la Cantidad a Retirar :";

//cin>>retirar(); esta funcion no existe hay que crearla pra implementarla

while(saldot<retir)
{
cout<<"Usted no Cuenta con Fondos Suficientes para Realizar el Retiro\n";
goto reintentar;
}

while(retir<=0)
{
reintentar:
cout<<"Desea Ingresar un Valor Valido s=si n=no:";
cin>>sn;
if(sn=='S'||sn=='s')
goto Retiro;
else
exit(0);
}
saldot=saldo(retir,0,saldot);
cout<<"Desea Realizar Otro Retiro s=si n=no:";
cin>>sn;
}
while(sn=='S'||sn=='s');

return saldot;
}
double Cuenta::opcion(int opcion1,double saldot)
{
switch(opcion1)
{
case 1:
saldot=deposit(saldot);
break;
case 2:
saldot=retiro(saldot);
break;
case 3:
saldot=transferencia(saldot);
break;
case 4:
saldot=pagoDeServicios(saldot);
break;
case 5:
saldot=RecargaCelular(saldot);
break;
case 6:
saldot = saldo(0.0,0.0, saldot);
cout<<"Usted cuenta con:"<<saldot<<"Lempiras\n";
break;
default:
system("cls");
cout<<"Cerrando Sistema...¡GRACIAS POR VISITAR NUESTRO BANCO!";
exit(0);
break;
}
return saldot;
}

double Cuenta::transferencia(double saldot)
{
Cuenta C;
double trans=0;
char sn;
double usseles;
system("cls");
if (saldot==0)
{
cout<<"Usted no cuneta con dinero disponible \n";
cout<<"Desea realizar otra operacion bancaria s=si n=no:";
cin>>sn;
if(sn=='S'|| sn=='s')


{
system("cls");
C.Ejecutar();
}
else
exit(0);
}
do
{
Ltrans:
system("cls");
cout<<"Ingrese el numero de cuenta a la que desea transferir:";
cin>>usseles; // usseles=inutil, el programa solo le pide esto para simular que es un banco
cout<< "Ingrese la cantidad a Transferir:";
cin>>trans;
while(saldot<trans)
{
cout<<"Usted no cuenta con fondos suficientes para realizar esta operacion";
goto reintentar;
}
while(trans<=0)
{
reintentar:
cout<<"¿Desea ingresar una cantidad valida? s=si n=no :";
cin>>sn;
if(sn=='S'||sn=='s')
goto Ltrans;
else
exit(0);
}

saldot=saldo(trans,0,saldot);
cout<<"¿Desea realizar otra operacion bancaria? s=si n=no:";
cin>>sn;
}
while(sn=='S'||sn=='s');
return saldot;
}
//fin de la transferencia

double Cuenta::pagoDeServicios(double saldot)
{
double pago = 0;
char sn;
int q,ser;
double useles;

system("cls");
do
{

selecc:
cout<<"Que servicio desea pagar"<<endl<<endl;
cout<<"1. Recibo de Luz"<<endl;
cout<<"2.Recibo de Telefono"<<endl;
cin>>q;

if(q==1)
{
system("cls");
cout<<"EMPRESA DE ENERGIA HONDURAS\n";
cout<<"Ingrese su numero de contador";
cin>>useles;
}
if(q==2)
{

system("cls");
selec:
cout<<"Seleccione su proveedor\n";
cout<<"1. HONDUTEL"<<endl;
cout<<"2. CLARO"<<endl;
cout<<"3. TIGO" <<endl;
cin>>ser;

if(ser==1)
{
cout<<"\t\tRecibo HONDUTEL\t\t" <<endl;
cout<<"Ingrese su Telefono:";
cin>>useles;
}
if(ser==2)
{
cout<<"\t\tRecibo CLARO\t\t" <<endl;
cout<<"Ingrese su Telefono:";
cin>>useles;
}

if(ser==3)
{
cout<<"\t\tRecibo TIGO\t\t" <<endl;
cout<<"Ingrese su Telefono:";
cin>>useles;
}

if(ser>3 || ser<1)
{
cout<<"Intente de nuevo"<<endl<<endl;
//goto Selec; //corregir esto tambien
}

}
if(q>2||q<1)
{
cout<<"Intente de nuevo"<<endl<<endl;
//goto Selec; //corregir esto tambien
}
if(saldot==0)
{
cout<<"Usted no cuenta con saldo\n";
cout<<"Desea realizar otra operacion bancaria s=si n=no:";
cin>>sn;
if(sn=='S'||sn=='s')
{
system("cls");
Ejecutar();

}
else
exit(0);
}
Lpago:
cout<<"Ingrese la cantidad a pagar:";
cin>>pago;
while(saldot<pago)
{
cout<<"Usted no cuenta con saldo suficiente para realizar el pago\n";
goto reintentar;
}
while (pago<=0)
{
reintentar:
cout<<" ¿Desea ingresar un valor valido? s=si n=no: " ;
cin>>sn;
if(sn=='S'||sn=='s')
goto Lpago;
else
exit(0);
}
saldot=saldo(pago,0,saldot);
cout<<"¿Desea realizar otro pago? s=si n=no: ";
cin>>sn;

}
while(sn=='s'||sn=='S');

return saldot;
}
//fin de la transferencia
double Cuenta::RecargaCelular(double saldot)
{

double recarga=0;
char sn;
int q, ser;
double useles;

system("cls");
do
{
selec:
cout<<"Seleccione su Compañia Telefonica:\n";
cout<<"1. HONDUTEL"<<endl;
cout<<"2. TIGO"<<endl;
cout<<"3. CLARO"<<endl<<endl;
cin>>ser;
if (ser==1)
{
cout<<"\t\ HONDUTEL \t\t"<<endl;
cout<<"Ingrese su numero de Telefono:";
cin>>useles;
}
if(ser==2)
{
cout<<"\t\ TIGO \t\t"<<endl;
cout<<"Ingrese su numero de Telefono:";
cin>>useles;
}
if(ser==3)
{
cout<<" \t\ CLARO \t\t "<<endl;
cout<<"Ingrese su numero de Telefono:";
cin>>useles;
}
if(ser>3 || ser<1)
{
cout<<"Intentalo de Nuevo"<<endl<<endl;
//goto Selec; "arreglar o corregir esto que es select"
}
if(Saldo==0)
{
cout<<"Usted no cuenta con fondos suficientes\n";
cout<<"Desea realizar otra operacion bancaria s=si n=no:";
cin>>sn;
if(sn=='S'||sn=='s')
{
system("cls");
Ejecutar();
}
else
exit(0);
}

Lpago:
cout<<"Ingrese la Cantidad a abonar";
cin>>recarga;

while (saldot<recarga)
{
cout<<"Usted no cuenta con fondos sufucientes para la recarga\n";
goto reintentar;
}

reintentar:
while(recarga<=0)
{
cout<<"¿Desea ingresar un valor valido? s=si n=no";
cin>>sn;
if(sn=='S'||sn=='s')
goto Lpago;
else
//exit(0); //corregir esto
cout<<"corregir";

}

saldot=saldo(recarga,0,saldot);
cout<<"¿Desaea realizar otra recarga? s=si n=no";
cin>>sn;

}while(sn=='s'|| sn=='S');


return saldot;
}

void Cuenta::Ejecutar()
{
int opt;
char sn;
double saldo=0;
do
{
system("cls");
cout<<"\t\t\tOperaciones Bancarias\n";
cout<<"1. Deposito\n";
cout<<"2. Retiro\n";
cout<<"3. Transferencia\n";
cout<<"4. Pago de Servicios\n";
cout<<"5. Recarga Celular\n";
cout<<"6. Saldo\n";
cout<<"7. Salir\n\n";

cout<<"Elija el numero de Operecion a realizar:";
cin>>opt;
double saldot=opcion(opt,saldot);
cout<<"¿Desea continuar con otra Operacion Bacaria? s=si n=no";
cin>>sn;
}
while (sn=='s'|| sn=='S');
system("cls");
cout<<"Cerrando Sistema... ¡GRACIAS POR UTILIZAR NUESTOS SISTEMA BANCARIO!\n";
exit(0);

}



int main()
{
Cuenta c;
c.Ejecutar();

return 0;
}
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
sin imagen de perfil

caso planteado utilizando funciones y aplicando variables locales y globales

Publicado por AYUDAAAPLSSSSSS (10 intervenciones) el 19/08/2021 22:41:51
Hermanoo:( ¿Me podrías ayudar por favor con esta actividad, es urgenteee!:((

1Usted ha sido contratado en el grupo de programadores de una importante compañía de software y su
primera labor dentro del equipo de trabajo consiste en crear dos programas solicitados por uno de los
clientes más fieles de la empresa.
Programa 1: se requiere manejar, por medio de un software, el proceso para generar el pago de nómina
de los empleados de una empresa; el sistema debe permitir las siguientes acciones:

a. Diligenciar la información básica de los empleados (cédula, nombres, teléfono, cargo y salario
básico).
b. Diligenciar la información por labor de los empleados (horas extras laboradas, descuentos por
préstamos, ahorro voluntario, descuentos por seguridad social).
c. Calcular el valor a pagar para cada empleado, por separado.
d. Mostrar la información necesaria para el pago de cada empleado por separado.
e. Cada acción del sistema debe ser programada dentro de una función.
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