본문 바로가기
프로그램

[파이썬] 문제 : 1부터 20가지 출력 while 코딩 분석

by 오디세이99 2023. 12. 11.
728x90
반응형

 

프로그램(코딩)은 목적이 중요합니다.

여기서는 숫자 1부터 20까지 한 줄로 출력하는 것이 목적이죠.

이 목적을 달성하는 여러 방법이 있는데, 여기서는 while 반복문을 사용한 것입니다.

그냥 다음과 같이

print(1,end=' ')

print(2,end=' ')

...

print(20,end=' ')

과 같이 할 수 있습니다. 그런데, 여기서 print()문이 반복되는 것을 볼 수 있습니다.

바뀌는 것은 숫자만 입니다. 이렇게 바뀌는 것과 바뀌지 않는 것을 구분하는 것이 중요합니다.

바뀌는 것(반복 되는)은 코드의 반복문( for, while 등)을 사용할 수 있는 거죠.

그럼 1부터니까

j = 1
 
텍스트 추가

로 해서 시작값을 지정해 줍니다.

이제 반복문을 사용하는데 반복문은 반복의 시작과 끝을 지정하는게 중요합니다.

시작은 j = 1로 했고, 끝은

while j <= 20:
 
텍스트 추가

으로 20까지로 합니다.

그럼 다음과 같이 지금까지 한 코드를 보면 다음과 가이 될 겁니다.

j = 1
while j <= 20:
   print(j)
 
텍스트 추가

그런데 위와 같이 하면 j 가 계속 1 이까지 무한 반복이 되겠죠.

j가 1,2,3,...20으로 증가하도록 해주어야 합니다.

j = j + 1
 
텍스트 추가

과 같이 하면 되겠죠.

파이썬에서 간단히 다음과 같이 할 수 있어요.

j += 1
 
텍스트 추가

그럼 지금까지 코드를 보면 다음과 같죠.

j = 1
while j <= 20:
   print(j)
   j += 1
 

위 코드를 실행하면

1

2

...

20

과 같이 나와요. 그런데 코드 목적이 한 줄로 숫자를 나열하는 것이니까 다음과 같이 해줍니다.

j = 1
while j <= 20:
   print(j, end=" ")  # 줄바꿈을 하지 않고 공백(" ")을 함
   j += 1
 

1 2 3 ... 20

 

이 코드와 비슷하지만 야간의 코드를 변경하면 다음과 같이 할 수도 있어요.

j = 1
while True:      # 무한 반복 시킴. break로 빠져나감
   print(j, end=" ")
   j += 1
   if j > 20:
      break       #  반복문을 빠져나감
 

for문을 통해서도 할 수 있고, 여러가지 방법이 있습니다. 코드의 목적에 따라 최적화된 방법을 사용하는 것이 좋은 코드를 만드는 것입니다.

 

728x90
반응형

댓글