Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

2n-1 라인으로 다이아몬드 패턴을 표시하는 Python 프로그램

<시간/>

숫자 n이 있다고 가정합니다. 별표가 있는 다이아몬드 패턴을 2n-1선으로 그려야 합니다. 처음 1에서 n개의 줄에는 1에서 n개의 별표가 포함되어 있으며 다음에는 n-1에서 1로 감소합니다.

따라서 입력이 n =5와 같으면 출력은

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

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • 1~n 범위의 i에 대해 수행

    • 블록 '*'을 i번 인쇄하고 각 줄에 (2*n-1)자 공백이 있는 가운데 정렬된 형식으로 인쇄합니다.
  • n-1에서 0 사이의 i에 대해 1 감소, 수행

    • 블록 '*'을 i번 인쇄하고 각 줄에 (2*n-1)자 공백이 있는 가운데 정렬된 형식으로 인쇄합니다.

예시

이해를 돕기 위해 다음 구현을 살펴보겠습니다.

def solve(n):
   for i in range(1,n+1):
      print(('* '*i).center(2*n-1))
   for i in range(n-1,0, -1):
      print(('* '*i).center(2*n-1))

n = 10
solve(n)

입력

10

출력

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