Я должен напечатать график 6 на 6 и построить заданную точку. Это пример для x = 2 и y = 3:
5 . . . . .
4 . . . . .
3 . x . . .
2 . . . . .
1 . . . . .
0 1 2 3 4 5
мой код:
public static String[][] plotPoint(String[][] plot){
int x=0, y=0;
Scanner sc = new Scanner(System.in);
boolean bool = true;
while(bool) {
System.out.println("Enter x coordinate between 0 and 5: ");
x = sc.nextInt();
System.out.println("Enter y coordinate between 0 and 5: ");
y = sc.nextInt();
if(x>=5||x<0||y>=5||y<0) {
System.out.println("The coordinates entered exceed the limit.");
}else {
x = x-1;
bool=false;
}
}
for(int i=0; i<6; i++) {
for(int j = 0; j<6; j++) {
if(i==x && j==y) {
plot[x][y]="x";//assigning "x" to coordinates
break;
}
}
}
return plot;
}
public static void main(String [] args) {
int h = 5;
Scanner sc = new Scanner(System.in);
String [][] strArr = new String[6][6];
char c='.';
for(int i = 0; i<6; i++) {
for(int j = 0; j<6; j++) {
if(j==0||i==5) {
strArr[i][j] = Integer.toString(h);
if(i==5)h++;
else h--;
}
else {
strArr[i][j]= Character.toString(c);
}
}
}
String[][] nStrArr = new String[6][6];
nStrArr = plotPoint(strArr);
for(int i = 0; i<6; i++) {
for(int j = 0; j<6; j++) {
System.out.print(nStrArr[i][j]+ " ");
}
System.out.println();
}
}
В настоящее время он печатает график правильно, но я думаю, что точка абсолютно неверна второе утверждение if в моем методе plotPoint неверно, но я не уверен, что еще можно попробовать.