A52251. 某公司完成项目需要用到A、B、C3种材料,它们的价格分别228、197、63(单位:元/个),该公司的若干项目材料需求量(单位:个)及预算(单位:元)数据如下表所示,这些数据被储存在字典变量proj中。proj中的键为项目编号,对应值是一个列表,列表中的四个元素分别为此项目需求的A材料、B材料、C材料数量及项目预算。编写程序,处理proj中的数据,评估每个项目的预算能否满足材料需求,并在接收到用…
填空题
困难
知识点
题目描述
某公司完成项目需要用到A、B、C3种材料,它们的价格分别228、197、63(单位:元/个),该公司的若干项目材料需求量(单位:个)及预算(单位:元)数据如下表所示,这些数据被储存在字典变量proj中。proj中的键为项目编号,对应值是一个列表,列表中的四个元素分别为此项目需求的A材料、B材料、C材料数量及项目预算。编写程序,处理proj中的数据,评估每个项目的预算能否满足材料需求,并在接收到用户输入的项目编号时对应输出此项目的预算情况。
要求:
(1)接收用户输入的项目编号字符串,若此项目编号出现在下表中,则根据预算的情况,若预算不低于材料总价格输出yes,预算低于材料总价格输出no;
(2)若用户输入的项目编号没有出现在下表中,输出not found。
提示:
(1)利用适当方法对变量proj中的数据进行处理,评估各项目预算是否不低于材料总价格;
(2)将项目标号与预算情况对应保存在新的字典中。
注:input()函数中不要增加任何参数等提示信息。
预设代码
proj = {'A1': [1, 2, 6, 1000],
'A2': [5, 1, 1, 1400],
'A3': [4, 3, 0, 1500],
'A4': [3, 2, 2, 1200],
'B1': [2, 4, 1, 1300],
'B2': [0, 6, 6, 1500],
'B3': [0, 8, 1, 1600],
'C1': [2, 1, 7, 1100],
'C2': [1, 3, 9, 1400],
'C3': [4, 0, 4, 1200]}例:
输入: B1 输出: no
输入: C4 输出: not found
参考答案
proj = {
'A1': [1, 2, 6, 1000],
'A2': [5, 1, 1, 1400],
'A3': [4, 3, 0, 1500],
'A4': [3, 2, 2, 1200],
'B1': [2, 4, 1, 1300],
'B2': [0, 6, 6, 1500],
'B3': [0, 8, 1, 1600],
'C1': [2, 1, 7, 1100],
'C2': [1, 3, 9, 1400],
'C3': [4, 0, 4, 1200]
}
result = {}
for i in proj:
a = proj[i][0] * 228 + proj[i][1] * 197 + proj[i][2] * 63
if a <= proj[i][3]:
result[i] = 'yes'
else:
result[i] = 'no'
name = input()
if name in result:
print(result[name])
else:
print('not found')
上一题
下一题