Red de conocimiento informático - Conocimiento sistemático - El juego del barco pirata utiliza el programa Java y los requisitos son los siguientes

El juego del barco pirata utiliza el programa Java y los requisitos son los siguientes

No entiendo si A elimina datos o B elimina datos después de que A golpea a B. En ambos casos, personalmente creo que el número aleatorio necesita un mejor algoritmo. El código es el siguiente: ¿paquete? t;

import?java.util.ArrayList;

import?java.util.Random;

/** *?Juego Corsair: crea dos matrices , cada uno con un tamaño de 5, y cada matriz almacena valores INT, números entre 1 y 10. *? Generado aleatoriamente. Si A dispara una bala de cañón a B, lea un número aleatorio y vea si está almacenado en B. Si existe, B será alcanzado. *?Los datos correspondientes serán eliminados. El que tenga tres números eliminados primero pierde.

*?@autor?hyc * */

¿clase pública?Prueba?{

estática?boolean?isLog?=?true;

pública?estática ?void?main(String[]?args)?{

isLog?=false;

for?(int?i?=?0;?i?lt;?100 ;?i )?{

AToB(5,?10,?3);

}

}

público?estático ?void?print(String?str){

if?(isLog)?{

System.out.println(str);

} p>

}

/** *?@param?len?Número de balas*?@param?maxRango aleatorio máximo*?@param?dieNumNúmero máximo de balas*?@return * /

público?static?void?AToB(int?len, int?max, int?dieNum){

ArrayListlt;Integergt;?a?=?new?ArrayListlt;Integergt ; (5);

ArrayListlt;Integergt;?b?=?new?ArrayListlt;Integergt;(5);

Aleatorio?random?=?new?Random(System. currentTimeMillis ());

for?(int?i?=?0;?i?lt;?len;?i )?{

a.add(random.nextInt ( max));

b.add(random.nextInt(max));

}

print("A: " a);

print("B:" b);

int?d_a?=?0;?//Número de veces que le dispararon

int?d_b?= ?0; //?bNúmero de viñetas

for?(int?i?=?0;?i?lt;?len*2;?i )?{

if ?( d_a?gt;=dieNum)?{

System.out.println("Un perdido");

return;

}

if?(d_b?gt;=dieNum)?{

System.out.println("B perdido");

return;

}

if?(i2==0)?{

print(i "--:" "A dispara una bala de cañón a B");

int?index?=?random.nextInt(a.size());

¿Entero?value?=?a.get(index);

print(i "- - :" "Un índice de shell: " índice ", valor de shell: " valor);

if?(b.contains(valor))?{

d_b;

a.remove(index); //B es golpeado por A y elimina datos

//b.remove(value); //B es golpeado por una bala y B elimina datos

p>

imprimir(i

"--:" "El proyectil de A impactó en B" d_b "veces...");

}else?{

print(i "--:" "La bala de cañón de A falló B");

}

}¿otra cosa?{

print(i "--:" "B disparó una bala de cañón a A ");

int?index?=?random.nextInt(b.size());

¿Entero?value?=?b.get(index);

imprimir (i "--:" "B índice de shell: " índice ", valor de shell: " valor);

if?(a.contains(value))?{

d_a ;

b.remove(index); //A es golpeado y B elimina datos

//a.remove(value); //A es golpeado A elimina datos

p>

print(i "--:" "El proyectil de B golpea a A" d_a "veces...");

}¿otra cosa?{

print(i " --:" "El caparazón de B pasó por alto A");

}

}

}

}

p>

System.out.println("A y B empatados...");

}

public?static?boolean?launch (int?index, ArrayListlt;Integergt;?list1,ArrayListlt;Integergt;?list2){

if?(list2.contains(list1.get(index)))?{

list1.remove( índice);

return?true;

}¿otra cosa?{

return?false;

}

}

}