CAJERO AUTOMÁTICO

Anuncio
CAJERO AUTOMÁTICO
PROBLEMA
Se plantea modelar el funcionamiento de un cajero automático. El objetivo principal es el de
definir las funciones básicas de un cajero automático, así como también las operaciones de
mantenimiento de cuentas bancarias.
Para cargar o guardar la información de las cuentas se debe emplear un archivo llamado
“cajero.txt”, el cual debe contener por cada cuenta los siguientes datos:
•
•
•
•
Número de Cuenta (21 dígitos alfanuméricos)
Clave (6 dígitos alfanuméricos)
Nombre del Titular de la Cuenta
Saldo Actual
Para alimentar el archivo con los datos de las cuentas, es necesario que Usted implemente las
siguientes funciones de mantenimiento:
int CuentaNueva(char, char, char, float) {
…
…
}
Esta función recibe como parámetros el número de la nueva cuenta, la clave, el nombre del
titular y el monto de apertura de la cuenta. La función debe retornar “1” si la cuenta fue creada
con éxito. En caso contrario debe retornar “0”.
float Depositar(char, float){
…
…
}
Esta función recibe como parámetros el número de cuenta y el monto a depositar. Debe
retornar el saldo de la cuenta después de realizar el depósito.
int CancelarCuenta(char) {
…
…
}
Esta función recibe como parámetro el número de cuenta a cancelar. Debe retornar “1” si la
cuenta fue cerrada con éxito. “0” en caso contrario. Una cuenta es cerrada si tiene saldo 0.00
pesos.
Para simular el funcionamiento del cajero automático, Usted debe implementar las siguientes
funciones:
int Usuario(char, char) {
…
…
}
Esta función recibe como parámetros el número de cuenta y la clave de acceso de usuario. La
misma debe retornar “1” si la clave concuerda con el número de cuenta. En caso que no exista
tal cuenta o la clave sea incorrecta, debe retornar “0”.
float Retirar(char, float) {
…
…
}
Esta función recibe como parámetros el número de cuenta y el monto a retirar. Debe retornar
el saldo de la cuenta después del retiro o un número negativo si el monto del retiro es superior
al saldo actual.
float ConsultaSaldo(char) {
…
…
}
Esta función recibe como parámetro el número de cuenta y debe retornar el saldo actual de la
cuenta.
int CambiarClave(char, char, char) {
…
…
}
Esta función recibe como parámetros el número de cuenta, la clave actual y la nueva clave.
Debe retornar “1” si la clave actual es válida para el número de cuenta indicado y asociar la
nueva clave a dicho número de cuenta en el archivo. Cuando se cambia la clave no se puede
colocar la misma.
Su proyecto deberá ser capaz de:
1. Programar las funciones definidas anteriormente. (NOTA: Es importante que los nombres
de las funciones sean escritos exactamente como se indican para efectos de la corrección).
2. Permitir que el usuario ingrese el nombre del archivo que contiene la información de las
cuentas (cajero.txt), y se realicen la verificación de los datos en dicho archivo para saber si es
correcto.
3. Programar una función llamada MenuCajero que simule el funcionamiento de un cajero
automático, partiendo de las funciones definidas anteriormente y las funciones de
Entrada/Salida que usted considere necesarias para definir la interfaz del cajero.
4. Crear un archivo de texto final llamado "cajeroN.txt" que tiene el mismo formato del archivo
cajero, pero este refleja todos los cambios ocurridos al finalizar el programa. Este archivo se
deberá guardar ordenado ascendentemente por saldo de la cuenta.
Usted deberá entregar en forma individual o en grupo de dos personas lo siguiente:
1. Análisis detallado del problema: explicación en lenguaje natural sobre cuál es el problema
planteado y la solución encontrada (no se desea una transcripción de este proyecto).
2. Definición de variables, procedimientos, funciones, constantes, tipos de datos, etc. Debe
explicar que significa cada una de las variables (constantes, acumulador, contador, etc.) y una
breve descripción de qué realiza cada una de las funciones y procedimientos de su programa
principal.
3. Listado del programa en lenguaje ANSI C (bien documentado), el cual debe reflejar la
solución encontrada.
4. Un disquete libre de virus que contenga el código fuente de su programa en Lenguaje ANSI
C (<archivo>.c) y el archivo ejecutable (<archivo>.exe) correspondiente.
Fecha de entrega: El día del examen ordinario.
Descargar