본문 바로가기
프로그램

[파이썬] 문제 : 통행료 계산(오토바이,승용차,트럭)

by 오디세이99 2022. 12. 6.
728x90
반응형

tollFee = {'M':1000, 'C':2000,  'T':4000}  # M:오토바이, C:승용자, T:트럭 통행료
car_cnt = {'M':0, 'C':0, 'T':0}            # 차량별 통과대수 리스트

while True:                               # 반복
    car = input('M:오토바이, C:승용차, T:트럭, close(종료) : ')     # 통행 차량 입력
    if car == 'close':                                             # close 명 종료
        print(f"차량 종류별 처리 대수 : ")                          # 차량별 통해 대수 출력
        for i,key in enumerate(car_cnt.keys()):                    # 
            print(f"{key} = {car_cnt[key]}", end='')
            if i < len(car_cnt)-1:
                print(', ', end='')
            print()
        
        total = 0
        print(f"차량별 통행료 합 : ")                                # 차량별 통행료 합 출력
        for i,key in enumerate(car_cnt.keys()):
            print(f"{key} = {car_cnt[key] * tollFee[key]}", end='')
            if i < len(car_cnt)-1:
                print(', ', end='')
            print()
            total += car_cnt[key] * tollFee[key]                     # 전체 통해료 합
            
        print("전체 통행료 :",total)
        break
        
    if car in tollFee:                             # tollFee 딕셔너리에 Key로 car 값이 있는지 확인
        car_cnt[car] += 1                          # car_cnt 딕셔너리에 car값을 Key로 Count를 더한다.
    else:                                          # tollFee 딕셔너리에 Key로 car 값이 없다면 error 처리
        print('ERROR (차량 종류가 아닙니다.)')

728x90
반응형

댓글