"""一段“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)