Как я могу напечатать следующий шаблон, используя вложенные циклы for в JAVA? - PullRequest
0 голосов
/ 04 декабря 2018

Я не могу напечатать следующий шаблон в программе Java, используя циклы for.Просьба помочь в этом вопросе.

    5
   54
  543
 5432
54321

Код

    Scanner sc = new Scanner(System.in); // Taking rows value from the user
    System.out.println("How many rows you want in this pattern?");
    int rows = sc.nextInt();
    System.out.println("Here is your pattern....!!!");
    for (int i = rows; i >= 1; i--) {
        for (int j = 1; j < i; j++) {
            System.out.print(" ");
        }
    }

Ответы [ 2 ]

0 голосов
/ 04 декабря 2018

В вашем нынешнем коде вы просто печатаете пространство.Теперь нужно сделать еще один шаг и напечатать числа вместе с новой строкой.

Вы можете сделать это следующим образом. Посмотрите, как это работает здесь :

public class PattrenClass 
{ 
    public static void main(String[] args) 
    { 
        //Connecting Keyboard to Scanner with `try-with-resources`
        try(Scanner sc = new Scanner(System.in);)
        {
            System.out.println("How many rows you want in this pattern?");
            int rows = sc.nextInt(); //Taking rows value from the user
            System.out.println("Here is your pattern....!!!");
            for (int i = rows; i > 0; i--)
            { 
                for (int j = 1; j < i; j++) 
                { 
                    System.out.print(" "); 
                }
                for (int j = rows; j >= i; j--) 
                { 
                    System.out.print(j); 
                }
                System.out.println(); 
            }
        }
    }
}

ВЫХОД :

How many rows you want in this pattern?
5
Here is your pattern....!!!
    5
   54
  543
 5432
54321
0 голосов
/ 04 декабря 2018

Попробуйте этот код,

public static void main(String args[]) throws Exception {
    try (Scanner sc = new Scanner(System.in);) { // Taking rows value from the user
        System.out.println("How many rows you want in this pattern?");
        int rows = sc.nextInt();
        if(rows <=0) {
            System.out.println("Please enter a positive number only.");
            return;
        }
        for (int i = 0; i < rows; i++) {
            for (int j = rows; j > 0; j--) {
                if (j <= i + 1) {
                    System.out.print(rows - j + 1);
                } else {
                    System.out.print(" ");
                }
            }
            System.out.println();
        }
    }
}

Для ввода 5 он напечатает,

Сколько строк вы хотите в этом шаблоне?5

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