#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <ctype.h>
#include <conio.h>
#define ENTER 13
enum Estatus { CONTINUA, GANA, PIERDE };
int dados(void);
int main()
{
int suma,puntuacion ,cantjuego= 0, cantgan = 0, cantperd =0;
char seguir= 's' ;
do {
printf("%cBienvenido al juego Craps!.\n",173);
printf("Presione la ENTER para lanzar los dados.\n");
switch (getch())
{
case ENTER:
break;
}
enum Estatus estatusJuego;
srand( time( NULL ) );
cantjuego++;
suma = dados();
switch( suma )
{
case 7:
case 11:
estatusJuego = GANA;
break;
case 2:
case 3:
case 12:
estatusJuego = PIERDE;
break;
default:
estatusJuego = CONTINUA;
puntuacion = suma;
printf( "Tu puntuacion es: %d\n", puntuacion );
break;
}
while ( estatusJuego == CONTINUA )
{
suma = dados();
if ( suma == puntuacion )
{
estatusJuego = GANA;
}
else
{
if ( suma == 7 )
{
estatusJuego = PIERDE;
}
}
}
if ( estatusJuego == GANA )
{
printf( "Gana el jugador\n" );
cantgan++;
}
else
{
printf( "Pierde el jugador\n" );
cantperd++;
}
return 0;
int dados( void )
{
int dado1;
int dado2;
int sumaTemp;
dado1 = 1 + ( rand() % 6 );
dado2 = 1 + ( rand() % 6 );
sumaTemp = dado1 + dado2;
printf( "El jugador tiro %d + %d = %d\n", dado1, dado2, sumaTemp );
return sumaTemp;
}
printf("%cDesea volver a jugar? (s)i o (n)o...\n",168);
do{
seguir = tolower(getche());
}while (seguir!= 's' && seguir != 'n');
}while (seguir == 's');
printf("\nJuegos jugados: %2d\n",cantjuego);
printf("Juegos ganados: %2d\n",cantgan);
printf("\nJuegos perdidos: %2d\n", cantperd);
return 0;
}
· Los códigos deben ir en etiquetas GeSHi
· No hagas doble post
>aquí las reglas del foro (http://foro.elhacker.net/reglas.htm)
-Engel Lex
que tal si cierras la llave despues de return 0; y antes de int dados() ?
Si te refieres a despues de donde se imprime el mensaje de que el jugador pierde, ya lo intente y me sigue dando el mismo error
Por favor coloca tu código legible... No es fácil leer código ajeno y menos si se coloca así
No comprendo a que te refieres, me parecia que estaba claro, como sugieres que lo coloque?
Sinceramente no sé para que me gaste en Tabular este código que no tiene pies ni cabeza.
Yo que ústedes no pierdo tiempo en esto porque ni si quiera copio bien el código para que lo revisemos. ( llaves mal cerradas, partes que le faltan condiciones... )
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <ctype.h>
#include <conio.h>
#define ENTER 13
enum Estatus { CONTINUA, GANA, PIERDE };
int dados(void);
int main()
{
int suma,puntuacion ,cantjuego= 0, cantgan = 0, cantperd =0;
char seguir= 's' ;
do {
printf("%cBienvenido al juego Craps!.\n",173);
printf("Presione la ENTER para lanzar los dados.\n");
switch (getch())
{
case ENTER:
break;
}
enum Estatus estatusJuego;
srand( time( NULL ) );
cantjuego++;
suma = dados();
switch( suma )
{
case 7:
case 11:
estatusJuego = GANA;
break;
case 2:
case 3:
case 12:
estatusJuego = PIERDE;
break;
default:
estatusJuego = CONTINUA;
puntuacion = suma;
printf( "Tu puntuacion es: %d\n", puntuacion );
break;
}
while ( estatusJuego == CONTINUA )
{
suma = dados();
if ( suma == puntuacion )
{
estatusJuego = GANA;
}
else
{
if ( suma == 7 )
{
estatusJuego = PIERDE;
}
}
}
if ( estatusJuego == GANA )
{
printf( "Gana el jugador\n" );
cantgan++;
}
else
{
printf( "Pierde el jugador\n" );
cantperd++;
}
return 0;
}
int dados( void )
{
int dado1;
int dado2;
int sumaTemp;
dado1 = 1 + ( rand() % 6 );
dado2 = 1 + ( rand() % 6 );
sumaTemp = dado1 + dado2;
printf( "El jugador tiro %d + %d = %d\n", dado1, dado2, sumaTemp );
return sumaTemp;
}
printf("%cDesea volver a jugar? (s)i o (n)o...\n",168);
do
{
seguir = tolower(getche());
}
while (seguir!= 's' && seguir != 'n');
}
while (seguir == 's');
printf("\nJuegos jugados: %2d\n",cantjuego);
printf("Juegos ganados: %2d\n",cantgan);
printf("\nJuegos perdidos: %2d\n", cantperd);
return 0;
}
josue9243, QUE GROSERO!, solo pedia ayuda, no habia necesidad de ofenderme :) Si no puedes o no quieres ayudar vete con tu mala vibra
paola, lo mínimo que debes hacer si quieres ayuda es identar tu código. Antes de comenzar a programar cosas te recomiendo estudiar sobre identaciones y estilos de código de llaves foráneas.
Es como si estuvieras aprendiendo a conducir un vehículo y te enojas porque te dicen que estas presionando el acelerador en ves del freno. Por otro lado no creo que sea mala vibra, sino mas bien es parte de las normas del foro (que supongo tampoco has leido).
La próxima ves que vea que pides ayuda sin colorear el código utilizando las etiquetas de código, no identando o creando dos veces el mismo post, lo eliminaré sin previo aviso.
Antes de continuar pidiendo ayuda intenta por ti misma identar tu código y te darás cuenta de tus propias faltas.
Saludos.