Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature may not be available in some browsers.
Original von Nornagest
Buzzt:
Warum postest du es nicht hier, andere sind da sicherlich dran interessiert.
function Minimax ( brett, farbe, tiefe ): integer
solange tiefe > 0
ermittle alle möglichen zuege der jeweiligen farbe
für jeden neuen zug rufe auf:
wert := minimax( neues_brett, not farbe, (tiefe-1) )
wenn farbe = weiss dann
wenn result < wert dann
result := wert
brett.naechsterzug := zug
wenn farbe = schwarz dann
wenn result > wert dann
result := wert
brett.naechsterzug := zug
wenn tiefe = 0
result := Bewerte_Stellung( brett )
ende - function
package spiel;
public class Comp {
static int next;
static int wert;
static char notC;
//Funktion maxWert
public static int maxWert() {
int ermittelt=-1000;
int zugWert;
for(int i=0; i<9; i++){
//Suche mögliche Züge
if(TicTacToe.position[i]=='0'){
//Simuliere den Zug
TicTacToe.position[i]='O';
//Wenn keine Züge mehr möglich
if(TicTacToe.voll()==true ||Sieg.sieg('O')==true)
zugWert=bewertungsFunktion('X');
else
zugWert=minWert();
//Zugsimulation zurücksetzen
TicTacToe.position[i]='0';
if(zugWert>ermittelt){
ermittelt=zugWert;
next=i; //für das Hauptprogramm (Position des nächsten Zugs)
}
}
}
return ermittelt;
}
//Funktion minWert
public static int minWert() {
int ermittelt=1000;
int zugWert;
int wert;
for(int i=0; i<9; i++){
//Suche mögliche Züge
if(TicTacToe.position[i]=='0'){
//Simuliere den Zug
TicTacToe.position[i]='X';
//Wenn keine Züge mehr möglich
if(TicTacToe.voll()==true ||Sieg.sieg('X')==true)
zugWert=bewertungsFunktion('X');
else
zugWert=maxWert();
//Zugsimulation zurücksetzen
TicTacToe.position[i]='0';
if(zugWert<ermittelt)
ermittelt=zugWert;
}
}
return ermittelt;
}
private static int bewertungsFunktion(char c)
{
if(Sieg.sieg('O')==true)
return 1;
else if(Sieg.sieg('X')==true)
return -1;
else
return 0;
}
}