我从我的学校设置了这个编码任务,但在执行 python 代码时遇到了问题

问题描述

https://www.101computing.net/entry-fees-calculator-using-a-flowchart/

我正在尝试进行学校发给我的编码挑战(链接见上),但我被卡住了,所以我希望有人能提供帮助。我在尝试添加折扣计算部分时卡住了,因为我必须查看价格是否超过 50,如果是,则对其应用 5% 的折扣

def ThemePark():
    age = int(input('Enter age: '))
    if age <= 15:
        print("Your entry price is £11")
    if age >= 15:
        print("Your entry price is £13.50")
    if age >= 18:
        print("Your entry price is £15 ")
    discount = get_discount(price1 + price2 + price3)
    print_discount_message(discount)
    price > 50
    price1 = 11
    price2 = 13.50
    price3 = 15
    price > 50
    discountprice = calculate_discount_price(price,discount)
    print(f'  Your price: {discd} (original price: {price})')

def discount(price):
    if price > 50:
        discount = 0.95
    else:
        discount = 0.0

    return discount

def print_discount_message(discount):
    if discount == 0.0:
        print('  Not qualified for family discount.')
    else:
        print('  Qualified for discount: {}%'.format(int(discount * 100)))

def calculate_discount_price(original_price,discount):
    return round(original_price - original_price * discount,2)

if __name__ == '__main__':
    while True:
        ThemePark()
        more = input('Buy more? (Yes/No): ')
        if more != 'Yes':
            break

解决方法

def print_discount_message(discount): 如果折扣 == 0.0: print('不符合家庭折扣条件。') 别的: 打印('符合折扣条件:{}%'.format(int(discount * 100)))

输出 print(' Qualified for discount: {}%'.format(int(discount * 100))) 你应该有: print(' 符合折扣条件:{}%'.format(int((1 - discount) * 100)))