반응형
첫 시도 (오답)
맨 마지막에 40이 출력되면 안 됨. i의 값이 정답보다 1 많다는 뜻
4 8 12 16 20 24 28 32 36 40
n = int(input())
#초기화
arr = []
i = 1
cnt = 0
#arr 정제
while True:
arr.append(n*i)
if (n * i) % 5 == 0:
cnt += 1
if cnt == 2:
break
i += 1
# arr 출력
for i in arr:
print(i, end=" ")
두 번째 시도 (정답)
n = int(input())
#초기화
arr = []
i = 1
cnt = 0
#arr 정제
while True:
arr.append(n*i)
if (n * i) % 5 == 0:
cnt += 1
if cnt == 2:
break
i += 1
# arr 출력
for i in arr:
print(i, end=" ")
오답노트
i += 1의 위치가 원인이었다.
첫 시도에서 i += 1이 5의 배수가 아닐 때는 실행되지 않는 문제점이 있었다.
i += 1는 if문이 끝나고 무조건 실행되게 하니 문제가 해결되었다. 즉, while 루프 바깥에서 매번 증가하게 해야 했다.
반응형
'DEV' 카테고리의 다른 글
배열 만들기 /100 도달하기 (0) | 2025.05.06 |
---|---|
배열 만들기 / 특정 조건에 맞게 출력하기 (0) | 2025.04.26 |
Python 코테 (0) | 2025.04.21 |
코드트리 gap check 후기🤦♀️ (1) | 2025.04.06 |
피보나치 수 구하기 (0) | 2025.04.06 |