Python知识练习-math模块 |
|
Walker
管理员
L12
• 2020-08-26 • 回复 1 • 只看楼主
• 举报
|
先附上一个简单的,做一个乘坐出租车,输入公里数,计算出价格的程序。
已知条件:
1、打车距离在3公里以内,只收起步价15元。
2、距离在3公里~15公里,每1公里加3元。
3、距离超过15公里后,每1公里加5元。
import math
num=math.ceil(float(input("请输入您的公里数:")))
#计算乘坐出租车需要多少钱
def dache(x):
if x<3:
money=15
elif 3<=x<=15:
money = (x - 3) * 3 + 15
else:
money=(num-15)*5+(15-3)*3+15
print("您的费用是%d"%money)
# 调用主函数
dache(num)
###################################################
第二个练习题比较复杂一些,可作参考
两个要求:
做一个输入快递数量及快递员人数,计算出需要配送几次可完成或输入快递数量,一共配送几次,计算出需要多少个快递员。
1,已知快递总量,快递员数量,计算快递需要几次可以完成
2,已知快递总量,配送次数,计算完成这些工作需要几个配送员
已知信息:
标准大小的集装箱内有100个快递,快递员一次只能配送20个快递,需要一个快递员配送5次才能完成
import math
def BOSS_input():
# 输入内容
types = int(input('请选择需要计算的工作:1-配送次数计算,2-快递员数计算,请选择'))
sizes = float(input('请输入项目大小:1代表标准,还可以输入其他倍数或小数'))
if types == 1:
others = int(input('请输入投入的快递员数,请输入整数'))
else:
others = int(input('请输入快递次数,请输入整数'))
return types, sizes, others # 这里返回一个数组
# 计算工作量
def calculate_job(data_input):
# 获取参数数值
types = data_input[0]
sizes = data_input[1]
others = data_input[2]
print('计算结果如下')
if types == 1:
# 配送次数计算过程
num = math.ceil(round((sizes * 100 / 20 / others), 2))
print('%.1f个标准集装箱大的快递项目,使用%d位快递员配送,则需要配送次数%d次' % (sizes, others, num))
elif types == 2:
# 快递员数计算过程
person = math.ceil(round((sizes * 100 / 20 / others), 2))
print('%.1f个标准集装箱大的快递项目,%d次配送完毕,则需要快递员数:%d位' % (sizes, others, person))
# 主函数
def res():
data_input = BOSS_input()
calculate_job(data_input)
# 调用主函数
res()