Ver Mensaje Individual
  #1  
Antiguo 31-08-2012
m1kevil m1kevil is offline
Registrado
NULL
 
Registrado: ago 2012
Posts: 7
Reputación: 0
m1kevil Va por buen camino
Ayuda con un pedacito de codigo! Por favor!

Código:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int TirarDados (void);
int CantJugadores (void);
int transEntero(char);
int Jugadores;



int main () {
    
    
    srand (time(NULL));
    
    printf("!Bienvenidos al juego: EL PRESO!\n\n");
    
    Jugadores = CantJugadores();



system("pause");
return EXIT_SUCCESS;

    }


// Funcion para tirar los dados //  
int TirarDados (void) 
{    
     Dados = rand() % 11+2;
     printf("Arrojas los dados. Has sacado %d! \n", Dados);
    
    return Dados; 
}  

// Funcion para pasar de char a entero //
int transEntero(char s)
{
    return s - '0';
} 

// Funcion para validar la cantidad de jugadores al principio del juego//
int CantJugadores ()
{
    printf("Ingrese la cantidad de jugadores (Minimo 2, Maximo 5): ");
    char jugador = getchar();
    int Jugadores = transEntero(jugador);
    while (Jugadores < 2 || Jugadores > 5)
    {
    printf("Ingrese una cantidad de jugadores valida: \n");
    char jugador = getchar();
    int Jugadores = transEntero(jugador);
    }
    printf("Los participantes del juego seran %d.\n", Jugadores);
    return Jugadores;    
}
El tema es asi, estoy empezando a codificar la primer parte de un juego para un proyecto de la universidad. Me encontre con un problema cuando quiero validar la cantidad de jugadores que van a ingresar por teclado. Tengo que validar que sea un valor entre 2 y 5 Jugadores, y a su vez que el programa no aborte ni pinche cuando se ingrese una letra o un caracter distinto de un decimal.
La primera parte va bien pero si se cumple la condicion del while, es decir se ingresa algo que no va entre 2 y 5, luego el programa pide nuevamente ingresador una cantidad de jugadores valida... y por mas que se ponga un 2, 3, 4 o 5, el programa no responde bien y vuelve a pedir una cantidad de jugadores valida...
Por favor alguien que me ayude a darme cuenta del error!

Saludos!!

Última edición por dec fecha: 01-09-2012 a las 20:39:04. Razón: Añadir la etiqueta CODE
Responder Con Cita