[C con Clase] Ayuda[minijuego]

Jose Cabrera josmaca en gmail.com
Sab Feb 13 17:29:01 CET 2010


A vale ahora lo pillo, vale solucionado jeje
Cambia en la función jugador la inicialización de punt1=0.0;
La pones antes del if((toupper(op))=='D'){
El problema esta en que si el jugador no toma ninguna carta no se
inicializa, creo que con esto ya se soluciona, te pongo el código de la
función:

void jugador(Carta baraja[], float jug1[], float &punt1, bool elegjug){
   srand(time(NULL));
   bool vcon=true;
   int i, cont,j;
   char op;
   cont=0;
   if (elegjug==0){
      cout << "Turno del jugador 1" << endl << endl;
   }
   else{
      cout << "Turno del jugador 2" << endl << endl;
   }
   do{
      cout << "D: Dame carta" << endl << "P: Plantarse" << endl << endl;
      cin >> op;
      punt1=0.0;
      if((toupper(op))=='D'){
         do{
            i=rand()%BARAJA;
         }while(baraja[i].cog==1);
            if((baraja[i].num==10) || (baraja[i].num==11) ||
(baraja[i].num==12)){
               jug1[cont]=0.5;
            }
            else{
               jug1[cont]=baraja[i].num;
            }


            baraja[i].cog=1;


            for(j=0;j<=cont;j++){
               punt1=punt1+jug1[j];
            }
            cont=cont+1;
            cout << baraja[i].num << " de ";
            switch(baraja[i].palo){
               case 0:
                    cout << "copas";
                    break;
               case 1:
                    cout << "oros";
                    break;
               case 2:
                    cout << "espadas";
                    break;
               case 3:
                    cout << "bastos";
                    break;
            }
            cout << ". LLevas " << punt1 << " puntos. " << endl;
            if(punt1>7.5){
               cout << "¡Te pasaste!" << endl << endl;
               vcon=false;
            }
      }
      else{
         if (elegjug==0){
            cout << "El jugador 1 se planta" << endl << endl;
         }
         else{
            cout << "El jugador 2 se planta" << endl << endl;
         }
        vcon=false;
      }
   }while(vcon);
}


El 13 de febrero de 2010 16:07, Rido <daniridao en hotmail.com> escribió:

> Sí, creo que no me entendiste. No me refiero a plantarte habiendo cogido
> cartas. Me refiero a si cojo y le doy a plantarse sin coger carta en ambos
> jugadores. No sé si ahora me explico algo mejor.
>
> Empieza la partida:
> - Jugador 1 se planta sin coger nada
> - Jugador 2 se planta sin coger nada
>
> Puntuación: Jugador 1                1 punto
>            Jugador 2                0 puntos
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20100213/d9d32b9f/attachment.html>


Más información sobre la lista de distribución Cconclase