Juego adivinar numero
Publicado por cesar (1 intervención) el 10/05/2017 12:26:07
Tengo este código que copila pero no funciona del todo bien y no encuentro el error. Es un juego en el que se tiene que adivinar un numero del 1 al 10 en tres intentos. Si lo consigues ganas y si no, gana el ordenador. El usuario puede elegir a cuantos juegos quiere jugar, de 1 a 3. Hay un marcador en el que se muestra cómo va la puntuación. Este es el código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
// Juego adivinar numero aleatorio 2
#include <iostream>
#include <cstdlib>
#include <time.h>
#include <string>
using namespace std;
void cuantosjuegos (int &n)
{cout <<"A cuantas partidas quieres jugar? (De 1 a 3)";
cin >> n;
if ((n<1) || (n>3))
{cout << "Valor no valido. Por defecto jugaremos a un maximo de 3 juegos." << endl;
cin>> n; }
}
void ganador (int ordenador, int minumero, string &f_quiengana)
{
for (int contador=1; contador<=3; contador++)
{f_quiengana= "Ordenador";
cout << contador << endl;
if (minumero==ordenador)
{cout <<"Has acertado" << endl;
f_quiengana="Usuario";
break;}
else
if (contador!=3)
{cout << "Has fallado. Introduce otro numero" << endl;
cin >> minumero;
};
};
}
int main ()
{
int numerordenador; int numerojugador; int numerojuegos; int puntospc; int puntosusuario;
string volver_jugar="s";
string quien_gana="ordenador";
cout <<"Bienvenido a nuestro juego" << endl;
while ((volver_jugar=="s")||(volver_jugar=="S"))
{
cuantosjuegos(numerojuegos);
puntospc=0; puntosusuario=0;
cout << "Ordenador " << puntospc <<" - Usuario " << puntosusuario <<endl;
for (int contadora=1; contadora<=numerojuegos; contadora++)
{
srand(time(NULL));
numerordenador=rand()%10;
numerordenador++;
cout<<"N ordenador: "<<numerordenador<<endl;
cout << "Que numero es?";
cin >> numerojugador;
ganador(numerordenador, numerojugador, quien_gana);
if (quien_gana=="Usuario")
{puntosusuario++;}
else
{puntospc++;};
};
cout << "El ganador es:" <<endl;
if (puntospc>=puntosusuario)
{cout << "EL ORDENADOR ";}
else
{cout << "EL USUARIO ";};
volver_jugar="n";
cout << "Quieres volver a jugar? (s/n)";
cin >> volver_jugar;
};
return 0;
}
Valora esta pregunta


0