Skip to content
This page has been auto-translated and may contain errors.View in English

title: 경비 분할 description: 그룹의 경비를 추적하고 마지막에 누가 누구에게 얼마를 줘야 하는지 계산합니다.

경비 분할

민준 알겠어. 우린 방금 보급소에서 돌아왔는데 모두가 다른 것들을 사느라 돈을 썼고 이제 누가 누구에게 얼마를 줘야 하는지 아무도 동의하지 않아. 항상 복잡해져. 누가 뭐에 돈을 썼는지 기록하고 누가 누구에게 얼마를 주면 되는지 알려주는 걸 만들어줄 수 있어? 승무원의 사기를 위해서라도 🙄

만들 것

경비 추가 ('done'을 입력하면 정산):
누가 냈어? 민준
금액? 45.00

경비 추가 ('done'을 입력하면 정산):
누가 냈어? 지은
금액? 30.00

경비 추가 ('done'을 입력하면 정산): done

합계: £75.00을 2명이 나눔 (1명당 £37.50)
민준이가 받아야 할 금액: £7.50
지은이가 줘야 할 금액: £7.50

필요한 것

  • 숫자와 산술 - 합계 나누기, 잔액 계산
  • 딕셔너리 - 각 사람이 낸 금액 추적
  • 리스트 - 수집할 때마다 각 경비를 저장
  • 제어 흐름 - 사용자가 "done"을 입력할 때까지 실행되는 입력 루프
  • 함수 - 수집과 계산을 분리하면 로직이 더 명확해집니다

힌트

각 사람이 낸 금액을 추적하세요. 이름을 키로, 금액을 값으로 하는 딕셔너리를 사용하면 사람별 합계를 쉽게 누적할 수 있습니다.

공평한 몫은 간단합니다. 전체 금액을 사람 수로 나눕니다. 어떤 사람이 낸 금액과 공평한 몫의 차이가 그들의 잔액입니다: 양수면 받아야 할 금액, 음수면 줘야 할 금액입니다.

먼저 수집하고, 나중에 계산하세요. 루프에서 모든 경비를 모으세요. 사용자가 "done"을 입력하면, 한 번에 모든 계산을 하세요.

더 나아가기

기본 기능이 작동하면:

  • 2명 이상. 로직은 동일합니다 - 모든 사람의 잔액을 공평한 몫과 비교해서 계산하세요. 각 사람의 결과를 표시하세요.
  • 항목별 경비. 사용자가 각 경비에 대한 설명을 추가할 수 있게 한 다음, 정산 전에 항목별 목록을 출력하세요.
  • 누가 누구에게 줄 것인가. 단순히 잔액을 표시하는 대신, 모든 사람을 정산하기 위해 필요한 최소한의 송금 집합을 계산하세요.