3 цикла for для печати следующего шаблона: - PullRequest
0 голосов
/ 10 октября 2019

Моя племянница задала мне этот вопрос, выполняя домашнее задание в школе, и я понятия не имею, как это сделать.

Учитель попросил их напечатать следующий шаблон, используя 3 цикла for в java :

1******
12*****
123****
1234***
12345**
123456*
1234567

любезно помогите.

спасибо!

Ответы [ 3 ]

2 голосов
/ 10 октября 2019

Раньше это было моим домашним заданием

Код

for (int i = 1; i <= 7; i++) {
    for (int j = 1; j <= i; ++j) {
        System.out.print(j);
    }
    System.out.println("");
}

покажет

1
12
123
1234
12345
123456
1234567

и

for (int i = 1; i <= 7; i++) {
    for (int k = 7 - i; k >= 1; k--) {
        System.out.print("*");
    }
    System.out.println("");
}

покажет

******
*****
****
***
**
*

Финал

for (int i = 1; i <= 7; i++) {
    for (int j = 1; j <= i; ++j) {
        System.out.print(j);
    }
    for (int k = 7 - i; k >= 1; k--) {
        System.out.print("*");
    }
    System.out.println("");
}

покажет

1******
12*****
123****
1234***
12345**
123456*
1234567
0 голосов
/ 10 октября 2019
    Are you sure question has been asked to solve by using 3 for loops?
    As it is better to use less loop as much as we can. Secondly there is no requirement in problem to use third loop. you can find the desired result by using two loops:

    public class Main
    {
        public static void main(String[] args) {
               for (int i = 1; i <= 7; i++) {
                for (int j = 1; j <= 7; j++) {
                    if (j <= i) {
                            System.out.print(j);
                    }
                    else
                    {
                        System.out.print("*");
                    }
            }
                System.out.println("\n");
        }
        }
    } 

output will be:
1******
12*****
123****
1234***
12345**
123456*
1234567
0 голосов
/ 10 октября 2019
public static void printPattern(int n) {
        for(int i=0; i<n; i++) {
            for(int k=1; k<=i+1; k++) {
                System.out.print(k);
            }
            for(int j=i+1; j<n; j++) {
                System.out.print("*");
            }
            System.out.println("");
        }
    }
...