Java:
public void pruefen(){
zeit.setText("");
for(int i = 0; i<4;i++){
if(feld.getFarbe(aktZeile,i)==code[i]){
zeit.setText(zeit.getText()+"r"); //richtig
}else if(pruefeAufVorkommen(feld.getAlleFarben(aktZeile),code[i])){
zeit.setText(zeit.getText()+"v"); //vorhanden
}else{
zeit.setText(zeit.getText()+"f"); //falsch
}
}
}
public boolean pruefeAufVorkommen(int farben, int code){
String tmp = ""+farben;
String codetmp = ".*"+code+".*";
if(tmp.matches(codetmp))return true;
else return false;
}
Ich habe
eine Array : int[] code mit 4 verschiedenen Zufallszahlen.
ein Zellenfeld : feld
die Methode feld.getFarbe(int x,int y) liefert einen int Wert (welcher eine farbe repräsentiert)
hierbei wird als x die aktuelleZeile verwendet.
Java:
public int getFarbe(int x, int y){
return farbe[x][y];
}
die Methode feld.getAlleFarben(int x) (int x = zeile) liefert hierbei einen int, der alle int der alle Farbcodes der Buttons einer Zeile enthält. (z.b. 1354)
Java:
public int getAlleFarben(int zeile){
String tmp = "";
for(int i = 0; i< 4;i++){
tmp = tmp+farbe[zeile][i];
}
return Integer.parseInt(tmp);
}
Mein Programm soll die Methode pruefen() aufrufen, welches überprüft, ob:
- das i. Feld (index i-1) des int Arrays gleich dem i. Feld des Zellenfeldes ist. (also x = aktuelleZeile y = i)
- wenn das nicht der fall ist, soll es überprüfen, ob der i. Wert des Arrays des Zellenfeldes in dem code vorkommt
- es überhaupt nicht vorkommt.
Zur Verständnis:
es handelt sich um das Spiel "MasterMind".
Beispielbild des Spiels