Hogyan kell egy JAVA 6x6-os amőba programhoz megcsinálni a mesterséges inteligenciát?
Bemásoltam amit írtam a 3x3-as amőbához de nem tudom hogy lehetne a 6x6- oshoz.
// Mesterséges intelligencia
public static int AI(char[] t) {
// u: user, c: computer, e: empty
char u = 'X', c = 'O', e = ' ';
// Felhasználó nyerésének megakadályozása
if (t[0] == u && t[1] == u && t[2] == e) return 3;
if (t[0] == u && t[1] == e && t[2] == u) return 2;
if (t[0] == e && t[1] == u && t[2] == u) return 1;
if (t[3] == u && t[4] == u && t[5] == e) return 6;
if (t[3] == u && t[4] == e && t[5] == u) return 5;
if (t[3] == e && t[4] == u && t[5] == u) return 4;
if (t[6] == u && t[7] == u && t[8] == e) return 9;
if (t[6] == u && t[7] == e && t[8] == u) return 8;
if (t[6] == e && t[7] == u && t[8] == u) return 7;
return (int) (Math.random() * 9 + 1);
}
Azért a forrást (prog.hu) feltüntethetted volna,
kész megoldást vársz?
Akkor fizess.
Na ilyen kódot nem szabad írni. Soha.
A kérdés meg... nem az igazi; az a helyzet, hogy a lehetséges AI megoldásokat meg tudod guglizni. Lehet egy egyszerű finite state machine, vagy neuronháló, genetikus algoritmus, stb. A fentihez hasonlóan hardcode -olt stratégia is lehet, de nem így. Még az A* algoritmust is be tudnám vetni, ha jobban belegondolok.
A business logicot meg illene úgy megírni, hogy ne érdekelje, mekkora a tábla.
Azt meg tényleg ne várd, hogy valaki majd megírja neked.
Van a táblának egy mérete, illetve a sorozat hossza, amit ki kell rakni. Ebből ki lehet indulni.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!