[Lenguaje C] Programación de cajero automático
// * *
//*Funciones miembro de la clase ATM*
// * *
// ************** **********************
#Incluir "función.h"
#Incluir
#Include
void ATM::welcome()
{
Número de veces = 0;
cout lt lt" $
¡Bienvenido al cajero automático de Ruoxue Bank ~!
" lt
char pwd[8], num[20], ch;
int I = 0;
Hacer
{
I = 0;
cout ltDo
{
CIN . get(ch);
num[i ]=
}mientras(ch!= '\n') ;
num[I-1]= ' \ 0 ';
I = 0;
cout lt ltPor favor ingrese la contraseña: ";
Hacer
{
CIN . get(ch);
pwd[i ]= ch;
}mientras ( ch!= '\n');
pwd[I-1]= '\0';
if (!check_passwd(num,pwd))
{
cout lt lt"El número de tarjeta o la contraseña que ingresó son incorrectos.
Vuelva a ingresar"
}
Otro
{
functionshow();
}
} while(times lt; 3);
lock();
}
bool Cajero automático: : comprobar _ passwd(char num[],
char pwd[])
{
if(strcmp(num,cnsm.get_num()) = = 0 amp; ampstrcmp
(pwd, cnsm.get_passwd())==0)
Devuelve verdadero
Otro
return falso
}
void ATM::functionshow()
{
int n;
do
{
cout lt" ltcout lt lt" 1) Cambiar contraseña"
CIN gt; gtn;
while(n lt ; 1 | n >;4)
{
cout lt lt"¡Ingrese el número de secuencia de operación correcto!"
CIN gt; gtn;
}
Conmutador (n)
{
Caso 1: cambiar _ passwd() ;
Descanso
Caso 2: fetchmoney();
Descanso
Caso 3: Información(); > p>
Pausa;
Caso 4: salir del cajero automático();
Pausa;
}
}mientras( verdadero );
}
void ATM::change_passwd()
{
char pwd[8], rep wd[8 ] ;
Número de veces = 0;
Hacer
{
cout ltCIN gt; if (! check_passwd(cnsm.get_num(), pwd))
veces;
Otro
Break;
} while( veces lt; 3);
Si (número de veces == 3)
lock();
int t = 0;
Do
p>{
cout lt ltPor favor ingrese la nueva contraseña: ";
CIN gt; gtpwd
cout lt lt"Ingrese la nueva contraseña nuevamente: ";
CIN gt; gtrepwd
if((t=strcmp(pwd, repwd))! =0)
cout lt lt"Las contraseñas que ingresaste dos veces son diferentes.
¡Por favor vuelve a entrar! " lt} while(t!=0);
cnsm.set_passwd(pwd);
cout lt lt" La contraseña se cambió correctamente, ¡recuerde! ” lt
}
void ATM::fetchmoney()
{
float m;
char ch
Hacer
{
cout lt lt lt" \ n $ gt\ \ " ltCIN gtm; m lt;=0)
{
cout lt lt"¡Ingrese el número correcto! " ltcout lt lt" $ gt\\ ";
CIN gt; gtm;
}
if(cnsm . get _ money()-m lt ;0)
{
cout lt lt"¡Lo sentimos, tu saldo es insuficiente! ”
lt}
Otro
{
cout lt ltcnsm . >}
cout lt lt"¿Quieres continuar con esta operación?: (Y/N)"
ltcout lt lt" $ gt\\ ";
CIN gt; gtch;
Y (ch! = ' n ' amp ampch! = ' N ' amp ampch! = ' Y ' amp ampch! = 'y ')
{
cout lt lt" $ gt\\";
CIN gtch
}
} mientras(ch = = ' Y ' | ch = = ' Y ');
}
void ATM::información()
{
cout lt lt"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *" lt lt; * " ltcout lt lt" *Nombre de usuario: "
}
void ATM::lock()
{
cout ltyours Card confiscado "ltexit(1);
}
void ATM::exitATM()
{
cout ¡Bienvenido a visitarnos! ¡La próxima vez! "ltcout lt lt"Por favor, sostenga esta tarjeta..."