13 lines
597 B
Python
13 lines
597 B
Python
"""一段“AI 生成”的代码:计算订单优惠后的金额。用于演示验证流程。"""
|
|
from decimal import ROUND_HALF_UP, Decimal
|
|
|
|
|
|
def final_price(amount: Decimal, coupon: Decimal, vip: bool) -> Decimal:
|
|
"""先减优惠券(不能减到负数),VIP 再打 95 折,结果保留两位小数(四舍五入)。"""
|
|
if amount < 0 or coupon < 0:
|
|
raise ValueError("金额和优惠券不能为负数")
|
|
price = max(amount - coupon, Decimal("0"))
|
|
if vip:
|
|
price = price * Decimal("0.95")
|
|
return price.quantize(Decimal("0.01"), rounding=ROUND_HALF_UP)
|