본문 바로가기

Python

[Python] 옷가게 할인 받기, math.floor(), int()

문제 설명

머쓱이네 옷가게는 10만 원 이상 사면 5%, 30만 원 이상 사면 10%, 50만 원 이상 사면 20%를 할인해 줍니다.

구매한 옷의 가격 price가 주어질 때, 지불해야 할 금액을 return 하도록 solution 함수를 완성해 보세요.

 

math.floor()

  • math.floor() 정의
    • The math.floor() method rounds a number DOWN to the nearest integer, if necessary, and returns the result.
      소수점 버림
  • Tip: To round a number UP to the nearest integer, look at the math.ceil() method.
    • math.ceil(): 소수점 올림
    • math.round(): 소수점 반올림
  • math.floor(price*0.8)
    • price*0.8 = 결과값의 소수점을 버림
  • 참고 자료: https://www.w3schools.com/python/ref_math_floor.asp
 

W3Schools.com

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

 

int()

  • int() 정의
    • The int() function converts the specified value into an integer number.
      정수

 

유의사항

  • 50만원, 30만원, 10만원 조건 가격도 return해야 하지만, 그외 미할인 가격도 return 해야한다.
  • if 조건은 위에서 충족되지 않을 경우 elif로 내려오기 때문에, 가장 크게 필터링 할 수 있는 조건부터 식을 시작한다.
import math

def solution(price):
    if price >= 500000:
        return math.floor(price*0.8)
    elif price >= 300000:
        return math.floor(price*0.9)
    elif price >= 100000:
        return math.floor(price*0.95)
    else:
        return price

 

 

반응형