首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >计算Python

计算Python
EN

Stack Overflow用户
提问于 2022-06-09 16:34:50
回答 2查看 451关注 0票数 -2

我是Python的绝对初学者,完成了以下培训任务:

“两个朋友在一家餐馆吃饭,账单是47.28美元。在加15%小费后,朋友们平分了账单。计算小费、支付总额和每个朋友的份额,然后输出一条信息:”每个人都需要支付:“后面跟着结果号码。”

我编写了下面给出的代码,但是系统说那里有一个计算错误。究竟什么是错误?

代码语言:javascript
代码运行次数:0
运行
复制
bill = 47.28
tip = 15 // bill * 100
total = bill + tip
share = total // 2
print("Each person needs to pay:" + str(share))
EN

回答 2

Stack Overflow用户

发布于 2022-06-09 17:02:05

您可以通过一个函数来更优雅地解决这个问题:

代码语言:javascript
代码运行次数:0
运行
复制
def split_bill_calculator(invoice:float, taxes:int, people:int)-> float:
    """
    Invoice: FLOAT value
    Taxes: INTEGER percent value
    People: INTEGER
    Return: total amount splitted for each person
    """
    add_tip = invoice * (1 + taxes / 100)
    payable_by_each = round(add_tip / people, 2)
    print(f"Each of the {people} guests should pay {payable_by_each}")
    return payable_by_each
票数 3
EN

Stack Overflow用户

发布于 2022-06-09 16:38:56

//是泛泛的除法(将除法的结果舍入最接近的整数).如果分子比分母小,那么你将得到0作为泛泛除法的结果。试着用tip = bill * 0.15来计算小费。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72563798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档