Buenas! actualmente estoy estudiando Ingenieria de Computadores y me encanta todo lo relacionado con la programació, linux etc... Hace muchos años que os sigo pero nunca me ha dado por registrarme.
Me gustaría pediros consejo acerca de un código que tengo entre manos para mi clase de programación, me está dando muuucho la lata.
Tengo que leer y escribir mediante ofstream e ifstream en un txt con usuarios y contraseñas para, una vez logueado, poder jugar a un juego.
El problema que tengo es que si fallo la contraseña 2 veces (por ejemplo) y la introduzco bien la tercera vez no hace nada! debería de poder acceder al juego.
Pego parte del código por si alguien pudiese echarme una mano.
Puedo poner el código completo y funcional si hiciese falta.
Mil gracias de antemano!!
Saludos.
Me gustaría pediros consejo acerca de un código que tengo entre manos para mi clase de programación, me está dando muuucho la lata.
Tengo que leer y escribir mediante ofstream e ifstream en un txt con usuarios y contraseñas para, una vez logueado, poder jugar a un juego.
El problema que tengo es que si fallo la contraseña 2 veces (por ejemplo) y la introduzco bien la tercera vez no hace nada! debería de poder acceder al juego.
Pego parte del código por si alguien pudiese echarme una mano.
Puedo poner el código completo y funcional si hiciese falta.
Mil gracias de antemano!!
Saludos.
Código [Seleccionar]
cout << "Por favor, introduce tu apodo: ";
cin >> apodo;
cout << "Contraseña: ";
cin >> password;
lecturareg.open("registro.txt");
escrituratmp.open("tmp.txt");
do
{
lecturareg >> d;
escrituratmp << d << endl;
if(d == apodo){
lecturareg >> d;
escrituratmp << d << endl;
if(d == password)
found = true;
else
{
for(i = 1; i <= 2; i++) {
cout << "Contraseña incorrecta! Vuelve a intentarlo: ";
cin >> password;
}
if(i == 3)
{
cout << "Lo siento, pero has fallado demasiadas veces. No puedes jugar." << endl;
opmenu = 0;
}
}
}
} while(found == false && d != "XXX");
lecturareg.close();
escrituratmp.close();
if(found == false && i == 0)
{
lecturatmp.open("tmp.txt");
escriturareg.open("registro.txt");
do
{
lecturatmp >> d;
if(d != "XXX")
escriturareg << d << endl;
else
escriturareg << apodo << endl << password << endl << "XXX";
} while(d != "XXX");
}
lecturatmp.close();
escriturareg.close();