cajero automatico
Publicado por Erick Rodriguez (1 intervención) el 27/04/2006 18:27:47
Hola necesito el codigo fuente de un cajero automatico que haga transacciones y e inserte pin
Valora esta pregunta


0
#include <stdio.h>
// Estructura para almacenar la información de la cuenta
struct Cuenta {
int numeroCuenta;
int saldo;
int pin;
};
// Función para validar el PIN
int validarPin(struct Cuenta cuenta, int pinIngresado) {
return cuenta.pin == pinIngresado;
}
// Función para mostrar el menú de transacciones
void mostrarMenu() {
printf("\nSeleccione una transacción:\n");
printf("1. Consultar saldo\n");
printf("2. Retirar dinero\n");
printf("3. Depositar dinero\n");
printf("4. Salir\n");
}
// Función para consultar el saldo
void consultarSaldo(struct Cuenta cuenta) {
printf("Saldo actual: %d\n", cuenta.saldo);
}
// Función para retirar dinero
void retirarDinero(struct Cuenta *cuenta, int cantidad) {
if (cantidad <= cuenta->saldo) {
cuenta->saldo -= cantidad;
printf("Retiro exitoso. Nuevo saldo: %d\n", cuenta->saldo);
} else {
printf("Fondos insuficientes. Saldo actual: %d\n", cuenta->saldo);
}
}
// Función para depositar dinero
void depositarDinero(struct Cuenta *cuenta, int cantidad) {
cuenta->saldo += cantidad;
printf("Depósito exitoso. Nuevo saldo: %d\n", cuenta->saldo);
}
int main() {
// Crear una cuenta de ejemplo
struct Cuenta cuentaEjemplo = {123456, 1000, 1234}; // Número de cuenta, saldo inicial, PIN
// Ingresar PIN
int pinIngresado;
printf("Ingrese su PIN: ");
scanf("%d", &pinIngresado);
// Validar el PIN
if (validarPin(cuentaEjemplo, pinIngresado)) {
int opcion;
do {
mostrarMenu();
printf("Seleccione una opción (1-4): ");
scanf("%d", &opcion);
switch (opcion) {
case 1:
consultarSaldo(cuentaEjemplo);
break;
case 2:
{
int cantidadRetiro;
printf("Ingrese la cantidad a retirar: ");
scanf("%d", &cantidadRetiro);
retirarDinero(&cuentaEjemplo, cantidadRetiro);
}
break;
case 3:
{
int cantidadDeposito;
printf("Ingrese la cantidad a depositar: ");
scanf("%d", &cantidadDeposito);
depositarDinero(&cuentaEjemplo, cantidadDeposito);
}
break;
case 4:
printf("Saliendo del cajero automático. ¡Gracias por utilizar nuestros servicios!\n");
break;
default:
printf("Opción no válida. Por favor, seleccione una opción válida.\n");
}
} while (opcion != 4);
} else {
printf("PIN incorrecto. Transacción cancelada.\n");
}
return 0;
}