
Crear mastermind con java
Publicado por Javier (5 intervenciones) el 04/11/2014 15:31:39
En el siguiente programa tengo que crear el juego mastermind, me faltan dos cosas por hacer, completar el método heridas que no sé como hacerlo(tiene que dar el numero de caracteres que has acertado descontando las muertes, y también tengo que finalizar el bucle do-while cuando el jugador dos haya acertado el código o llegue a 10 turnos.
Si alguien sabe como completarlo agradecería, también si me podéis decir como poner el código con el sangrado
Si alguien sabe como completarlo agradecería, también si me podéis decir como poner el código con el sangrado
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import java.util.*;
public class MasterMind{
public static void main (String[] args){
String clave2;
Scanner tec = new Scanner(System.in);
System.out.println(" Bienvenido Jugador1, escriba una clave de 5 numeros no iguales");
String clave1 = tec.next();
System.out.println(" Jugador 2 introduzca cinco digitos para acertar la clave del jugador 1");
int i=1;
do{
clave2 = tec.next();
System.out.println("TURNO " + i) ;
System.out.println("La clave que has puesto es: " + clave2);
int nmuertos = muertos(clave1, clave2);
System.out.println("Muertos; " + nmuertos);
int nheridos = heridos(clave1, clave2);
System.out.println("Heridos: " + nheridos);
++i;
}
while ((i <= 10) );
if( i>10){
System.out.println("El jugador 2 ha perdido");
} else {
System.out.println("El jugador 2 ha ganado");
}
System.out.println("Puntuación= " + i);
}
public static int muertos ( String clave1, String clave2){
int comp = 0;
//int clave1l = clave1.length();
//int clave2l = clave2.length();
int a = 0;
for( comp = 0 ; comp<5 ; comp++){
char c2 = clave2.charAt(comp);
char c1 = clave1.charAt(comp);
if ( c1 == c2 ){
a++;
}
}
//System.out.println( clave1l + " " + clave2l);
return a;
}
public static int heridos ( String clave1, String clave2){
int n = 0;
int a, b;
int h = 0;
for( int comp = 0 ; comp<5 ; comp++){
char c2 = clave2.charAt(comp);
char c1 = clave1.charAt(comp);
int clave1l = clave1.length();
int clave2l = clave2.length();
n = clave1.indexOf(c2);
a = clave2.indexOf(c1);
if( n == a){
h+=1;
}
}
return n;
}
}
Valora esta pregunta


0