자기계발
프로그래머스
직각삼각형 출력하기

프로그래머스 · 직각삼각형 출력하기

문제

정수 n을 입력받아 높이와 너비가 n인 직각 이등변삼각형을 *로 출력한다. 첫째 줄에 별 1개, 둘째 줄에 2개, 이런 식으로 n번째 줄에 n개를 찍는다. n은 1 이상 10 이하다.

풀이

입력은 문자열로 들어오므로 int()로 감싸 정수로 바꾼다. 그다음 range로 반복문을 돌린다. range(0, n)은 0부터 n-1까지만 도니까, 1부터 n까지 돌리려면 range(1, n+1)을 쓴다. 매 반복마다 "*"에 i를 곱한 문자열을 출력한다.

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

짚고 갈 점

range는 인자를 세 개까지 받는다.

# start부터 end 직전까지 step만큼 움직임
range(start, end, step)
 
# start : 생략하면 0부터 (인자가 하나면 그 값이 end)
# end : 이 값은 포함되지 않음 (end - 1까지)
# step : 순회하는 간격
 
## ex) step을 2로 설정하면
for i in range(0, 6, 2):
    print(i)
 
## result
0
2
4

출처