elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Programando un Craps en C...
0 Usuarios y 2 Visitantes están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Programando un Craps en C...  (Leído 12,918 veces)
Principios en C

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Programando un Craps en C...
« en: 8 Septiembre 2011, 21:38 pm »

Hola...

Estoy programando un craps en C, creo que la base del juego ya me quedo... pero aun me falta incluir al juego apuestas!! :-\ y aqui es cuando me atoré...

No sé como hacer para que se apueste minimo $5 cada vez que lanzen una tirada y pueda retirarse del juego o ganar el doble. Debo poner un limite de credito a la banca, por ejemplo $2000.

Pero ya no me surgen ideas, podrian ayudarme con esto?
Por favor!!!!! :rolleyes:


Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4.  
  5. int lanzadado(void);
  6.  
  7. main(){
  8.       int estadojuego, suma, mispuntos, avanza; /*Sección de declaraciones*/
  9.       printf("\n\n%s\n\n","< Una función para un juego de dados >");
  10.       srand(time(NULL));
  11.       suma = lanzadado();
  12.  
  13.       switch(suma){
  14.                    case 7: case 11: estadojuego =1;
  15.                    break;
  16.  
  17.                    case 2: case 3: case 12: estadojuego = 2;
  18.                    break;
  19.  
  20.                    default:
  21.                             estadojuego = 0;
  22.                             mispuntos = suma;
  23.                             printf("Mis puntos son: %d\n", mispuntos);
  24.                             break;
  25.                             }
  26.  
  27.                             while (estadojuego == 0){
  28.  
  29.                                   suma = lanzadado();
  30.                                   if(suma == mispuntos)
  31.                                   estadojuego = 1;
  32.                                   else
  33.                                   if(suma == 7)
  34.                                   estadojuego = 1;
  35.                                   }
  36.  
  37.                                   if(estadojuego == 1)
  38.                                   printf("Ya gano!!\n");
  39.                                   else
  40.                                   printf("Lo siento perdio!\n");
  41.                                   scanf("%d", &avanza);
  42.                                   return 0;
  43.                                   }
  44.  
  45.                                   int lanzadado(void){
  46.  
  47.                                       int dadouno, dadodos, sumatirada;
  48.                                       dadouno = 1 + (rand()%6);
  49.                                       dadodos = 1 + (rand()%6);
  50.                                       sumatirada = dadouno + dadodos;
  51.                                       printf("Lanzamiento de los dados %d+%d=%d\n",dadouno,dadodos, sumatirada);
  52.                                       return sumatirada;
  53.                                       }


« Última modificación: 11 Septiembre 2011, 20:56 pm por Principios en C » En línea

Alien-Z

Desconectado Desconectado

Mensajes: 177


C++ Programmer


Ver Perfil
Re: Programando un Craps en C...
« Respuesta #1 en: 8 Septiembre 2011, 23:49 pm »

Citar
No sé como hacer para que se apueste minimo $5 cada vez que lanzen una tirada y pueda retirarse del juego o ganar el doble. Debo poner un limite de credito a la banca, por ejemplo $2000.

No entiendo muy bien la duda, te basta con ir poniendo bucles y condiciones, por ejemplo para la apuesta mínima puedes hacer algo asi:

Código:
apuesta = 0;
while (apuesta < 5)
{
printf("La apuesta minima es de 5 dolares. ¿Cuánto quiere apostar?: ");
scanf ("%d", &apuesta);
}

Para retirarse del juego pon después de la tirada una pregunta y sus correspondientes acciones, por ejemplo:

Código:
printf ("1- Doble o nada.\n2-Retirarse.\nElija su opción: ")
scanf ("%d", &opcion);
if (opcion == 1)
{
apuesta *= 2;
}
if (opcion == 2)
{
//Que termine la partida o lo que quieras hacer
}

No sé si es eso lo que buscas, sino comenta y te diré cómo sería, el problema es que como no has puesto un code para las apuestas pues no sé muy bien de qué va tu juego; pero si tu pregunta era generalizada entonces con los bucles y condiciones podrás hacerlo.

Saludos.


« Última modificación: 8 Septiembre 2011, 23:53 pm por Alien-Z » En línea

Principios en C

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Re: Programando un Craps en C...
« Respuesta #2 en: 9 Septiembre 2011, 01:42 am »

Gracias por responder.... la verdad apenas probare lo que mencionas, pero se trata de un juego que lanza dos dados y si la suma de los puntos es 7 u 11 ganas, y en caso de ser 2, 3 u 12 pierdes.... entonces por cada vez que se lanzen los dados debo preguntar me imagino que si desea apostar y las condciones de la apuesta ya las mencione.
En línea

Alien-Z

Desconectado Desconectado

Mensajes: 177


C++ Programmer


Ver Perfil
Re: Programando un Craps en C...
« Respuesta #3 en: 9 Septiembre 2011, 10:08 am »

Gracias por responder.... la verdad apenas probare lo que mencionas, pero se trata de un juego que lanza dos dados y si la suma de los puntos es 7 u 11 ganas, y en caso de ser 2, 3 u 12 pierdes.... entonces por cada vez que se lanzen los dados debo preguntar me imagino que si desea apostar y las condciones de la apuesta ya las mencione.

Entiendo, pero para eso te basta con analizar los números; no se pueden hacer los ejercicios (no es muy ético) pero con los esquemas que te he dejado puedes guiarte y hacer el code específico para tu juego; si te atrancas o te da algún error pregunta de nuevo.

Saludos.
« Última modificación: 9 Septiembre 2011, 10:27 am por Alien-Z » En línea

Principios en C

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Re: Programando un Craps en C...
« Respuesta #4 en: 11 Septiembre 2011, 19:56 pm »

Ya use lo que me sugeriste pero no me sale... por mas que lo pongo en varios lados.... ya sea que me imprime nada mas el menú, dice que si quieres apostar o ninguna de las dos y tan solo ya gano o perdio....   qué puedo hacer?? no pido que me lo resuelvan pero es que no me sale.... ademas yo tengo hecho la mayor parte del codigo y creanme que como principiante me costo mucho trabajo.
Ayuda!!! urge ahora si!!! Porfitas!!!! :-(
Algo en lo que si no tengo ni idea es como decir que se tiene un limite en la bolsa de apuesta por ejemplo 2000
« Última modificación: 11 Septiembre 2011, 20:31 pm por Principios en C » En línea

Alien-Z

Desconectado Desconectado

Mensajes: 177


C++ Programmer


Ver Perfil
Re: Programando un Craps en C...
« Respuesta #5 en: 11 Septiembre 2011, 20:33 pm »

Deberías postear el nuevo code con las modificaciones que le hayas hecho, asi sabremos dónde falla.
En línea

Principios en C

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Re: Programando un Craps en C...
« Respuesta #6 en: 11 Septiembre 2011, 20:43 pm »

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

int lanzadado(void);

main(){
       int estadojuego, suma, mispuntos, avanza, apuesta, opcion, i;
       apuesta = 0;
       opcion = 1;
       printf("\n\n%s\n\n","< Una función para un juego de dados >");  
       printf("La apuesta minima es de 5 pesos. ¿Cuánto quiere apostar?: ");
       scanf ("%d", &apuesta);  
       srand(time(NULL));
       suma = lanzadado();
      
       if(apuesta>=5){
      
       switch(suma){
                    case 7: case 11: estadojuego =1;
                    break;
                    
                    case 2: case 3: case 12: estadojuego = 2;
                    break;
                    
                    default:
                    estadojuego = 0;
                    mispuntos = suma;
                    printf("Mis puntos son: %d\n", mispuntos);
                    break;
                    }
                            
                    while (estadojuego == 0){
                                  
                    suma = lanzadado();
                    if(suma == mispuntos){
                    estadojuego = 1;
                    
                    }
                    else{
                    if(suma == 7){
                    estadojuego = 1;
                    }
                    }
                    }
              
                    if(estadojuego == 1){
                    printf("Ya gano!!\n");
                    printf ("1.- Apuesta el triple?\n2.- Prefiere retirarse?.\n\n Elija su opción: ");
                    scanf ("%d", &opcion);
                    if (opcion == 1){
                    apuesta *= 3;
                    }
                    if (opcion == 2){
                    getch();
                    }
                    }
                    else{
                    printf("Lo siento perdio!\n");
                    printf ("1.- Apuesta el triple?\n 2.-Prefiere retirarse?.\n\n Elija su opción: ");
                    scanf ("%d", &opcion);
                    if (opcion == 1){
                    apuesta *= 3;
                    }
                    if (opcion == 2){
                    getch();
                    }


                    }
                    scanf("%d", &avanza);
                    return 0;
                    }
                    }
                    
                    
                                  
                    int lanzadado(void){
                                      
                    int dadouno, dadodos, sumatirada;
                    dadouno = 1 + (rand()%6);
                    dadodos = 1 + (rand()%6);
                    sumatirada = dadouno + dadodos;
      printf("Lanzamiento de los dados %d+%d=%d\n",dadouno,dadodos, sumatirada);
                    return sumatirada;
                   }
Aqui ya me aparece el menu despues de que haya ganado  o perdido pero por mas que trato de hacer que despues de que elija la opcion se vuelvan a lanzar los dados no puedo o los vuelve a lanzar pero no sale el incremento de su apuesta....
« Última modificación: 11 Septiembre 2011, 20:51 pm por Principios en C » En línea

Principios en C

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Re: Programando un Craps en C...
« Respuesta #7 en: 11 Septiembre 2011, 20:57 pm »


Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4.  
  5. int lanzadado(void);
  6.  
  7. main(){
  8.       int estadojuego, suma, mispuntos, avanza, apuesta, opcion, i;
  9.       apuesta;
  10.       opcion = 1;
  11.       printf("\n\n%s\n\n","< Una función para un juego de dados >");  
  12.       printf("La apuesta minima es de  pesos. ¿Cuánto quiere apostar?: ");
  13.       scanf ("%d", &apuesta);  
  14.       srand(time(NULL));
  15.       suma = lanzadado();
  16.  
  17.       if(apuesta>=5){
  18.  
  19.       switch(suma){
  20.                    case 7: case 11: estadojuego =1;
  21.                    break;
  22.  
  23.                    case 2: case 3: case 12: estadojuego = 2;
  24.                    break;
  25.  
  26.                    default:
  27.                    estadojuego = 0;
  28.                    mispuntos = suma;
  29.                    printf("Mis puntos son: %d\n", mispuntos);
  30.                    break;
  31.                    }
  32.  
  33.                    while (estadojuego == 0){
  34.  
  35.                    suma = lanzadado();
  36.                    if(suma == mispuntos){
  37.                    estadojuego = 1;
  38.  
  39.                    }
  40.                    else{
  41.                    if(suma == 7){
  42.                    estadojuego = 1;
  43.                    }
  44.                    }
  45.                    }
  46.  
  47.                    if(estadojuego == 1){
  48.                    printf("Ya gano!!\n");
  49.                    printf ("1.- Apuesta el triple?\n2.- Prefiere retirarse?.\n\n Elija su opción: ");
  50.                    scanf ("%d", &opcion);
  51.                    if (opcion == 1){
  52.                    apuesta *= 3;
  53.                    printf("Tu apuesta ahora es de: %d\n",apuesta);
  54.                    suma = lanzadado();
  55.                    }
  56.                    if (opcion == 2){
  57.                    printf("Usted se ha retirado con la cantidad de: %d", apuesta);          
  58.                    }
  59.                    }
  60.                    else{
  61.                    printf("Lo siento perdio!\n");
  62.                    printf ("1.- Apuesta el triple?\n 2.-Prefiere retirarse?.\n\n Elija su opción: ");
  63.                    scanf ("%d", &opcion);
  64.                    if (opcion == 1){
  65.                    apuesta *= 3;
  66.                    printf("Tu apuesta ahora es de: &d", apuesta);
  67.                    suma = lanzadado();
  68.                    }
  69.                    if (opcion == 2){
  70.                    printf("Usted se ha retirado con la cantidad de: %d", apuesta);          
  71.                    }
  72.  
  73.  
  74.                    }
  75.                    scanf("%d", &avanza);
  76.                    return 0;
  77.                    }
  78.                    }
  79.  
  80.  
  81.  
  82.                    int lanzadado(void){
  83.  
  84.                    int dadouno, dadodos, sumatirada;
  85.                    dadouno = 1 + (rand()%6);
  86.                    dadodos = 1 + (rand()%6);
  87.                    sumatirada = dadouno + dadodos;
  88.      printf("Lanzamiento de los dados %d+%d=%d\n",dadouno,dadodos, sumatirada);
  89.                    return sumatirada;
  90.                    }

Aqui ya me da la apuesta triple y lanza nuevamente los dados pero ya no dice si gano o perdio....
« Última modificación: 11 Septiembre 2011, 21:07 pm por Principios en C » En línea

Alien-Z

Desconectado Desconectado

Mensajes: 177


C++ Programmer


Ver Perfil
Re: Programando un Craps en C...
« Respuesta #8 en: 11 Septiembre 2011, 21:50 pm »

Se hace difícil entender el code si no respetas espacios y cambios de línea, debes separar partes del código que se refieran a diferentes cosas.

El problema de que no te diga si has ganado o has perdido es porque no llamas a esa parte en todos los casos, lo que debes hacer es crear una función que te pida las diferentes opciones (apostar el triple, retirarse, etc.) y según la respuesta del usuario que efectúe una acción u otra, y que el único valor que retorne dicha función sea el de los puntos ganados o perdidos.

Te retocaré ese par de puntos en el code para que veas como sería, ahora un rato me pongo y lo posteo.
« Última modificación: 11 Septiembre 2011, 21:52 pm por Alien-Z » En línea

Principios en C

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Re: Programando un Craps en C...
« Respuesta #9 en: 11 Septiembre 2011, 22:37 pm »

Gracias!  :D
Esperare tu post.... el tiempo se me termina!!!! :-(
y mi cabezilla ya no da para mas...
me volvio loquizimo ese programa....   :¬¬
« Última modificación: 11 Septiembre 2011, 22:59 pm por Principios en C » En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Programando server
Programación Visual Basic
amtapias 4 1,530 Último mensaje 4 Marzo 2006, 18:52 pm
por sch3m4
Programando con gtk+
Programación C/C++
Khronos14 5 3,652 Último mensaje 6 Enero 2011, 18:54 pm
por paju1986
juego de craps (1000)tiradas , histograma de frecuencia y tiradas..
Programación C/C++
manuel_venezuela 2 4,287 Último mensaje 3 Agosto 2011, 20:31 pm
por manuel_venezuela
hp programando
Programación General
bengy 1 2,338 Último mensaje 5 Agosto 2011, 11:07 am
por Debci
ayuda en programa craps
Programación C/C++
AngelMix 4 2,543 Último mensaje 21 Junio 2016, 01:38 am
por AlbertoBSD
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines