python - 반복문

slocat·2023년 11월 5일
0

start-data

목록 보기
4/75

for문과 while문

횟수에 의한 반복이라면 for문, 조건에 의한 반복일 때는 while문이 더 편리하다.

1. 반복 종료 시점을 알 때

# 버스 운행 시간이 6시-23시로 정해져 있음

gapA = 15
gapB = 13
gapC = 8

for time in range(17 * 60 + 1):

    if time < 20 or time > (16 * 60):
        if time % gapA == 0 and time % gapB == 0:
            print(f'A B 동시 정차 => {time // 60 + 6}: {time % 60}')

    else:
        if time % gapA == 0 and time % gapB == 0:
            print(f'A B 동시 정차 => {time // 60 + 6}: {time % 60}')

        elif time % gapA == 0 and time % gapC == 0:
            print(f'A C 동시 정차 => {time // 60 + 6}: {time % 60}')

        elif time % gapB == 0 and time % gapC == 0:
            print(f'B C 동시 정차 => {time // 60 + 6}: {time % 60}')

        elif time % gapA == 0 and time % gapB == 0 and time % gapC == 0:
            print(f'A B C 동시 정차 => {time // 60 + 6}: {time % 60}')

2. 반복 종료 시점을 모를 때

gear1 = int(input('1번 톱니 수: '))
gear2 = int(input('2번 톱니 수: '))

turn = 1
while True:

    if turn % gear1 == 0 and turn % gear2 == 0:
        print(f'최초로 만나는 톱니 수: {turn}톱니')
        print(f'gear1 회전 수: {turn // gear1}회전')
        print(f'gear2 회전 수: {turn // gear2}회전')
        break

    turn += 1

0개의 댓글