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

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda juego UNO
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda juego UNO  (Leído 2,440 veces)
ricardo093

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Ayuda juego UNO
« en: 3 Diciembre 2017, 18:08 pm »

Hola amigos, estoy haciendo un juego de cartas (un UNO) y tengo que crear las cartas (son 108) en estructuras, eso ya lo hice; lo que tengo que hacer ahora es pasar todas las cartas a una pila, lista o vector para comenzar a repartir, pero no sé como. Solo se pueden usar estructuras, vectores, pilas, listas, funciones o procedimientos para hacer el juego. Podrían ayudarme por favor.
Gracias de antemano.

Este es el codigo que crea las 108 cartas y las muestra (cada carta es una estructura que tiene una o dos propiedades: color y numero, color y nombre, nombre), todo eso se puede colocar en procedimientos (luego lo hago):

Código
  1.  
  2. #include<iostream>
  3. #include<string.h>
  4. using namespace std;
  5. int main (){
  6. string color1[4]={"Azul","Rojo","Amarillo","Verde"};
  7. int numero1[]={0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9};
  8. string nombre1[6]={"Roba_Dos","Roba_Dos","Cambio_Sentido","Cambio_Sentido","Pierde_Turno","Pierde_Turno"};
  9. string nombre2[2]={"Comodin","Comodin_Roba_Cuatro"};
  10.  
  11. struct carta{//elementos de la baraja y elementos de cada carta
  12. string color;
  13. int numero;
  14. string nombre;
  15. }baraja[108];
  16.  
  17. int k=0;
  18. for(int i=0; i<4; i++){
  19. cout<<endl;
  20. for (int j=0; j<19; j++){
  21. baraja[k].color=color1[i];
  22. baraja[k].numero=numero1[j];
  23. cout<<"Color: "<<baraja[k].color<<"  Numero: "<<baraja[k].numero<<endl;
  24. k++;
  25. }
  26. }
  27. cout<<endl<<endl;
  28. for(int j=0; j<4; j++){
  29. cout<<endl;
  30. for(int l=0; l<6; l++){
  31. baraja[k].color=color1[j];
  32. baraja[k].nombre=nombre1[l];
  33. cout<<"Color: "<<baraja[k].color<<"  Numero: "<<baraja[k].nombre<<endl;
  34. k++;
  35. }
  36. }
  37. cout<<endl<<endl;
  38. for(int i=0; i<4; i++){
  39. for(int j=0; j<2; j++){
  40. baraja[k].nombre=nombre2[j];
  41. cout<<"Nombre: "<<baraja[k].nombre<<endl;
  42. k++;
  43. }
  44. }
  45. }
  46.  
  47.  


En línea

moncker94

Desconectado Desconectado

Mensajes: 5



Ver Perfil
Re: Ayuda juego UNO
« Respuesta #1 en: 6 Diciembre 2017, 12:55 pm »

Muy buenas ricardo093,

y, para empezar, me encanta tu idea, de verdad.


1. Creación de una estructura con función de pila

Leyendo tu código y analizando tu consulta creo que aquello que quieres hacer se puede dividir en varios puntos. Recordemos que la modulación es una de nuestras mejores herramientas.

a. Primero debemos constituir una estructura con función de pila
b. Requerimos colocar cada una de nuestras cartas de la baraja de manera aleatoria
c. Esta pila, por supuesto, tiene que tener una función "pop" que elimine la primera de las cartas que tenemos en ella.

Vayamos por partes



2. Construcción de pila

Nuestra estructura pila podría ser un simple struct con su funcionalidad. Una gran idea está en colocarlo en un fichero ".h" y construirlo directamente ahí.

He encontrado un link que te ayudará muchísimo en este paso:
http://es.ccm.net/faq/2885-las-pilas-en-lenguaje-c#requisitos



3. Colocar cada una de las cartas de manera aleatoria

3-a. Explicado de una forma simple, requeriremos de la función random:

#include <time.h>

srand(time(NULL));
int numRand = rand() % 107; 

3-b En la que además, deberemos colocar un while que nos asegure que no hemos dado ese número todavía.

En definitiva, nuestro código permitirá la elección aleatoria de una de las posiciones de nuestro vector de struct carta:  "baraja" y a cada posición nueva que vaya dando la iremos colocando dentro de la pila en orden - push -, pero con elección aleatoria.



4. Función pop
Con la implementación del punto 2 vendrá ya la estructura del pop



5. Para finalizar

Me ha encantado tu proyecto y me encantaría ver la funcionalidad final, si quieres ponerte en contacto conmigo, sería un placer ayudarte en lo que pueda más allá de esta consulta.

Saludos,

moncker94


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con un juego
Juegos y Consolas
TheChivo 0 1,995 Último mensaje 7 Septiembre 2004, 09:53 am
por TheChivo
Ayuda con un juego
Juegos y Consolas
nov_led 2 2,045 Último mensaje 29 Octubre 2005, 07:43 am
por aNexos
Juego por lan (css) ayuda
Juegos y Consolas
ayleid 1 1,907 Último mensaje 11 Febrero 2008, 20:02 pm
por Bht Sata
ayuda con juego de rol
Juegos y Consolas
f3d3cav 2 2,059 Último mensaje 9 Abril 2008, 23:18 pm
por Castiblanco
Ayuda con juego
Programación Visual Basic
kiwisucks 4 2,073 Último mensaje 21 Octubre 2008, 01:42 am
por kiwisucks
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines