Java программа для печати графика координат x & y и отображения отображаемой точки - PullRequest
0 голосов
/ 21 апреля 2020

Я должен напечатать график 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 неверно, но я не уверен, что еще можно попробовать.

1 Ответ

0 голосов
/ 21 апреля 2020

Я не думаю, что для 'l oop требуется пометить' x 'на графике. Попробуйте это.

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 {
            y = y+1;
            bool=false;
        }
    }
    plot[plot.length-y][x] = "x";
    return plot;

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...