Craps c++
En este ejemplo de c++ mostrare uno de los juegos de azar
más populares, un juego de dados conocido como “craps”, el cual se juega en
casinos y callejones por todo el mundo, el cual en este caso lo aremos como
simulación. Las reglas son simples:
Dados |
Un jugador tira dos dados. Cada dado tiene seis caras, las
cuales contienen 1, 2, 3, 4, 5, 6 puntos negros. Una vez que los dados dejan de
moverse, se calcula la suma de los puntos negros en las dos caras superiores.
Si la suma es 7 u 11 en el primer tiro, el jugador gana. Si la suma es 4, 5, 6,
8, 9 o 10 en el primer tiro, esta suma se convierte en el punto del jugador.
Para ganar el jugador debe seguir tirando los dados hasta que salga otra vez su
punto. El jugador pierde si tira un 7 antes de llegar a su punto.
Aquí el código:
//appletenhtml#include <iostream> //diva 2014#include <cstdlib> //incluye la funcion RAND (random)using namespace std;using std::rand;using std::srand;#include<ctime>//contiene el prototipo para la funcion timeusing std::time;int tirarDados(){int dado1= 1+rand()%6;//tiro del primer dadoint dado2= 1+rand()%6;//tiro del segundo dadoint suma=dado1+dado2;//calcula la suma de valores de los dados//mostrando resultado de este tirocout<<"El jugador tiro "<<dado1<<" + "<<dado2<<" = "<<suma<<endl;return suma;//devuelve la suma de los dados}//fin funcion tirar dadosint main(){string estado="";int miPunto;//punto si no se gana o pierde en el primer turnosrand(time(0));int sumaDeDados=tirarDados();// numeroaleatorio = (1 + rand() % 100);//determinando estado del juegoswitch(sumaDeDados){case 7://gana con 7 en el primer turnocase 11: //gana con 11 en el primer turnoestado="gano";break;case 2://pierde con 2 en el primer turnocase 3://pierde con 3 en el primer turnocase 12: //pierde con 12 en el primer turnoestado="perdio";break;default://no gano ni perdio por lo que recuerda el numeroestado="continuar";miPunto=sumaDeDados;//recuerda el puntocout<<"El punto es "<<miPunto<<endl;break;//opcional al final de switch}//fin de switch//mientras el juego no este completowhile(estado=="continuar")//no gano ni perdio{sumaDeDados=tirarDados();//tira los dados de nuevo//determina el estadi dek juegoif(sumaDeDados==miPunto){estado="gano";} else if(sumaDeDados==7)//pierde al tirar 7 antes de punto{estado="perdio";}} //fin del while//muestra mensaje que gano o perdioif(estado=="gano"){cout<<"El jugador gana"<<endl;}else{cout<<"El jugador pierde"<<endl;}}//tirarDados calcula la suma y muestra los resultados
saludos.
Descargar ejemplo
Muy interesante, muchas gracias. La verdad es que siempre me han gustado los juegos de Casino Online.
ResponderBorrar