Hallo, dieses nichtgrafische Koordinatensystem soll soviele Werte haben, wie es int gibt. Leider kann ich bisher in jede Richtung nur bis 5 gehen außer im 1. Quadranten. Kann mir jemand sagen woran der Fehler liegt, bzw. was ich tun muß?
Java:
package langton;
import java.util.Arrays;
public class Board {
int Matrix1 [][]= { {0,0,0,0,0}, {0,0,0,0,0}, {0,0,0,0,0}, {0,0,0,0,0},{0,0,0,0,0} };
int Matrix2 [][]= { {0,0,0,0,0}, {0,0,0,0,0}, {0,0,0,0,0}, {0,0,0,0,0},{0,0,0,0,0} };
int Matrix3 [][]= { {0,0,0,0,0}, {0,0,0,0,0}, {0,0,0,0,0}, {0,0,0,0,0},{0,0,0,0,0} };
int Matrix4 [][]= { {0,0,0,0,0}, {0,0,0,0,0}, {0,0,0,0,0}, {0,0,0,0,0},{0,0,0,0,0} };
public int getstate (int x, int y){
int result=0;
if (x>=0 && y>=0){
if (x> Matrix1[0].length){int Matrix1[][]=Arrays.copyOf( Matrix1, x+5); //1. Quadrant
result= Matrix1[y][x];
}
}else
if (x<0 && y>=0){ //2. Quadrant
result= Matrix2[-1*x][y];
}
if (x<= 0 && y <0){ //3. Quadrant
result= Matrix3[-1*x][-1*y];
}
if (x>0 && y<0){ //4. Quadrant
result=Matrix4[x][-1*y];
}
return result;
}
public void setstate(int x,int y, int state1){
if (x>=0 && y>=0){ //Im 1. Quadrant Werte setzen
Matrix1[y][x]=state1;
}
if (x<0 && y>=0){ //Im 2. Quadrant Werte setzen
Matrix2[-1*x][y]=state1;
}
if (x<=0 && y<0){ //Im 3. Quadrant Werte setzen
Matrix3[-1*x][-1*y]=state1;
}
if (x>0 && y<0){ //Im 4. Quadrant Werte setzen
Matrix4[x][-1*y]=state1;
}
}}
Zuletzt bearbeitet von einem Moderator: