본문 바로가기

카테고리 없음

[백준 2438번] 별찍기 - 1 파이썬

반응형

문제

첫째 줄에는 별 1개, 둘쨰 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제

입력

첫쨰 줄에 N (1 ≤ N ≤ 100)이 주어진다.

출력

첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.

예제 입력 1

5

예제 출력 1

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

 

오류 코드

n = int(input())

for i in range(0, n):
    for j in range(0, i):
        print("*", end="")
    print()

 

5를 입력했을 때, 첫 째줄은 아무것도 출력되지 않은 채로 의도와 다르게 4번 별표가 출력된다.

 


*
**
***
****

 

그리고 end=""도 몰랐다. Python의 경우 print를 하면 자동으로 줄바꿈을 해주는데, 출력할 때 줄바꿈을 하지 않으려면 end=""를 붙인다. 끝에 아무것도 출력하지 말고 줄바꿈을 하지 말라는 뜻이다. 

 

Copliot이 자동으로 작성해줘서 공부에 오히려 방해가 되었다.

 

Visual Studio Code 우측 하단에서 자동완성을 끌 수 있다.

 

수정 코드

n = int(input())

for i in range(0, n):
    for j in range(0, i+1):
        print("*", end="")
    print()

이렇게 코드를 짜면 의도한 대로 출력되는 걸 볼 수 있다. 

반응형