赞
踩
项目二:工作量计算器
要求
要求
分析过程
已知信息:标准的项目,需要1个人用80工时完成(1个人做10天)
计算方式1:工时计算
输入:项目大小(浮点型,代表标准大小的倍数)、人数(整数)
输出:工时数量(浮点型)
案例:1.5倍标准大小的项目,一共2人》》程序》》需要60工时
计算方式2:人力计算
输入:项目大小(浮点型、代表标准项目的倍数)、工时数量(浮点型)
输出:人数(整数)
案例:0.5倍标准大小的项目,需要20.0工时内完成》》程序》》需要2人
# 注:size代表项目大小,number代表人数,time代表工时数量
# 工时计算
size = 1.5
number = 2
time = size*80/number#(请填上公式)
print('项目大小为1.5个标准项目,使用2个人力完成,则需要工时数量为:',time)
# 人力计算
size = 0.5
time = 20.0
number = size*80/time#(请填上公式)
print('项目大小为0.5个标准项目,如果需要在20.0个工时完成,则需要人力数量为:',int(number))
阶段一
# 无需修改代码,直接运行即可
# 工时计算
def estimated_time(size,number):
time = size * 80 / number
print('项目大小为%.1f个标准项目,使用%d个人力完成,则需要工时数量为:%.1f个' %(size,number,time))
# 人力计算
def estimated_number(size,time):
number = size * 80 / time
print('项目大小为%.1f个标准项目,如果需要在%.1f个工时完成,则需要人力数量为:%d人' %(size,time,number))
# 调用工时计算函数
estimated_time(1.5,2)
# 调用人力计算函数
estimated_number(0.5,20)
# %f的意思是格式化字符串为浮点型,%.1f的意思是格式化字符串为浮点型,并保留1位小数。
存在的问题
人力计算公式number可能会出现小数,但应该取整。
阶段二:修改向上取整
法一:需要导入math模块,使用ceil()
import math
# 人力计算
def estimated_number(size,time):
number = math.ceil(size * 80 / time)
print('项目大小为%.1f个标准项目,如果需要在%.1f个工时完成,则需要人力数量为:%d人' %(size,time,number))
# 调用人力计算函数
estimated_number(1,60)
将小数转为int,再加1.
import math
# 人力计算
def estimated_number(size,time):
if (size * 80 % time) != 0:
number = int(size * 80 / time) + 1
else:
number = size * 80 / time
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。