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

 

 


Tema destacado:


  Mostrar Mensajes
Páginas: [1]
1  Programación / Java / Juego MasterMind Java necesito ayuda en: 1 Febrero 2015, 17:24 pm
Tengo que hacer el juego del MasterMind en java, por el momento he conseguido que me genere una clave aleatoria de 4 colores entre 6 colores existentes dentro del juego que seria lo que habria que adivinar, introduciendo por teclado una secuencia de 4 colores.

El juego trata de introducir una secuencia de colores en un orden concreto y si coincide con la que el programa habia generado en un principio ganas, pero si fallas pueden ocurrir dos cosas, que no aciertes ninguna posicion pero si el color y te apareceria un mensaje que te diria "Hay X fichas descolocadas" y " 0 fichas acertadas" o podria ser que acertases alguna y hubiese alguna descolocada. El problema lo tengo al intentar sacar el metodo de fichasAcertadas y fichasDescolocadas

pongo el codigo que tengo y a ver si algun alma caritativa me pudiese resolver estos dos metodos. Perdon por lo del code, no lo sabia.

Código
  1. import java.util.Random;
  2. import java.util.Scanner;
  3.  
  4. public class MasterMind {
  5.  
  6. public static void main(String[] args) {
  7. //char [] clave = GenerarClave();
  8.  
  9. System.out.println("Bienvenido al juego del MasterMind");
  10. System.out.println("");
  11. System.out.println("Escribe una secuencia de 4 colores introduciendo la letras del color elegido y pulsando intro hasta completar la secuencia.");
  12. System.out.println("M=Marron, R=Rojo, A=Azul, Z=Amarillo, N=Naranja y V=Verde");
  13. System.out.println("");
  14. MostrarSolucion(pedirSolucion());
  15. }
  16.  
  17. public static String [] pedirSolucion()  {
  18. String [] solucion = new String [4];
  19. Scanner input = new Scanner(System.in);
  20. System.out.println("Escriba la soluccion que crea que es correcta: ");
  21. for (int i = 0; i < solucion.length; i = i + 1) {
  22. String color = input.next();
  23. solucion[i] = color;
  24. }
  25. return solucion;
  26. }
  27.  
  28. public static void MostrarSolucion(String [] solucion){
  29. for (int i = 0; i < solucion.length; i = i + 1) {
  30. System.out.print(solucion[i] + " ");
  31. }
  32. System.out.println();
  33. }
  34.  
  35. static boolean estaRepetido(char color,char [] clave){
  36. boolean repetido = false;
  37. int i=0;
  38. while ( (i < clave.length)&&(repetido == false) ){
  39. if (color == clave[i]){
  40. repetido=true;
  41. }
  42. i++;
  43. }
  44. return repetido;
  45. }
  46.  
  47. public static char[] GenerarClave(){
  48. Random rnd = new Random();
  49. char [] clave = new char[4];
  50. int i=0;
  51. char posibleColor = 'Q';
  52. char posibleColor2 = 'Q';
  53. while(i < clave.length){
  54. if(i==0){
  55. double x = rnd.nextDouble();
  56. int color =(int) ((x*5)+1);
  57. switch (color) {
  58. case 1: clave[i] = 'M';break;
  59. case 2: clave[i] = 'R';break;
  60. case 3: clave[i] = 'N';break;
  61. case 4: clave[i] = 'A';break;
  62. case 5: clave[i] = 'Z';break;
  63. case 6: clave[i] = 'V';break;
  64. }
  65. i++;
  66. }else{
  67. double j = rnd.nextDouble();
  68. int color3 =(int) ((j*5)+1);
  69. switch (color3) {
  70. case 1: posibleColor = 'M';break;
  71. case 2: posibleColor = 'R';break;
  72. case 3: posibleColor = 'N';break;
  73. case 4: posibleColor = 'A';break;
  74. case 5: posibleColor = 'Z';break;
  75. case 6: posibleColor = 'V';break;
  76. }
  77. posibleColor2 = posibleColor;
  78. while (estaRepetido(posibleColor2,clave)){
  79. double y = rnd.nextDouble();
  80. int color2 =(int) ((y*5)+1);
  81. switch (color2) {
  82. case 1: posibleColor2 = 'M';break;
  83. case 2: posibleColor2 = 'R';break;
  84. case 3: posibleColor2 = 'N';break;
  85. case 4: posibleColor2 = 'A';break;
  86. case 5: posibleColor2 = 'Z';break;
  87. case 6: posibleColor2 = 'V';break;
  88. }
  89. }
  90. clave[i] = posibleColor2;
  91. i++;
  92. }
  93. }
  94. return clave;
  95. }
  96. }
  97.  


Mod: Tema movido a Java, procura usar los Sub-foros correctos
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines