본문 바로가기

코딩/Python

[Python] 백준 2439

반응형

코드 작성 1

n = int(input())
for i in range(1,n+1):
    print((n-i)*" ", i*"*", sep='')

코드 작성 2

n= int(input())

for i in range(1,n+1):
    print(" "*(n-i) + "*"*i)

 

코드  풀이1

#1

총 5개의 칸 중에 첫줄에는 띄어쓰기 4칸, 별(*)1칸, 두번째 줄에는 띄어쓰기 3칸, 별(*)2칸이 주어진다.

 

#2

for 문을 사용할 경우 for i in range(n)으로 하면 0부터 n까지의 범위가 된다. 따라서 for i in range(1, n+1)로 작성해야 i 가 1부터 n까지 구현된다.

 

#3

sep=''의 경우

sep : seperate의 약자이다. 즉 print문에서 콤마(,)로 각 변수를 구분하는데 그 변수 사이사이마다 어떤 값을 넣을 지 결정한다.

예를 들어, print(1,2) 또는 print(1, 2)로 작성할 경우

>>1, 2

이렇게 출력된다. 따라서 sep=''로 마지막에 넣을 경우 print(1,2,sep='')

>>1,2

위와 같이 출력된다.

 

#4

또다른 예시로 end 가 있는데 보통 print문을 작성 하고 그 다음줄로 넘가는데

print(1, end='')

print(2)으로 입력할 경우 개행을 생략한다.

>>12

따라서 위와 같이 출력된다.

 

코드  풀이 2

#1

풀이 2에서는 더하기로 표현하여 나타낼 수도 있다.

반응형

'코딩 > Python' 카테고리의 다른 글

[Python] 백준 10951 A+B -4  (0) 2022.11.13
[Python] 백준 10952 A+B -5  (0) 2022.11.13
[Python] 백준 10824 네 수  (0) 2022.11.13
[Python] 백준 8393 합  (0) 2022.11.12
[Python] 백준 2739 구구단  (0) 2022.11.07