我刚开始使用pycharm学习编码。所以一切对我来说都是新的。我必须编写几个简单易用的程序,我已经编写过这些程序并且只是坚持使用这个程序。
问题: 设计一个程序,计算代表JCU布里斯班体育俱乐部的3名新板球运动员的设备总成本。新项目如下: - 每位新玩家都会获得护膝和击球手套。 - 将询问用户每个新玩家的T恤尺寸,并根据此尺寸将T恤价格添加到总数中。 - 此外,该队还获得了3个新的板球和5个新球。
板球每个售价20美元,蝙蝠45美元,护膝70美元,一双击球手套130美元。 T恤尺码为S(45美元),M(55美元),L(65美元)和XL(75美元)。
该程序应返回设备的总成本。
我无法做的是如何为每个特定玩家定义每个特定大小的值。我是新的,卡住了。如果有人可以帮忙请。
这是我到目前为止所做的:
# practise for coding challenge
psize = input("enter the size of the player1(s/m/l/xl): ")
#psize2 = input("enter the size of the player:")
cricBall = 20
cricBat = 45
kPad = 70
batGlove = 130
tsmall = 45
tmed = 55
tlar = 65
txl = 75
if psize == "s":
total = (3 * kPad) + (3 * batGlove) + 45 + (3 * cricBall) + (5 * cricBat)
print("The total cost of equipment is:", total)
if psize == "m":
total = (3 * kPad) + (3 * batGlove) + 55 + (3 * cricBall) + (5 * cricBat)
print("The total cost of equipment is:", total)
if psize == "l":
total = (3 * kPad) + (3 * batGlove) + 65 + (3 * cricBall) + (5 * cricBat)
print("The total cost of equipment is:", total)
if psize == "xl":
total = (3 * kPad) + (3 * batGlove) + 75 + (3 * cricBall) + (5 * cricBat)
print("The total cost of equipment is:", total)
答案 0 :(得分:2)
你已经有了一个好的开始。我宁愿不提供任何代码,因为你可以通过一些帮助自己解决这个问题来了解更多。但是如果你真的无法解决它,我可以在以后添加它。
首先,您可以使用if-statements
而不是使用不同的if, elif and perhaps an else-statement
。就像下面的假代码一样:
if statement:
do this
elif statement:
do this
elif statement:
do this
else:
do this
至于您的问题:您已经预定了每个尺寸的价格,并根据输入打印变量。您所要做的就是在正确的语句中将每个大小添加到total
。例如,在下面的代码中我们添加价格:
if psize == "s":
total = (3 * kPad) + (3 * batGlove) + 45 + (3 * cricBall) + (5 * cricBat) + tsmall
print("The total cost of equipment is:", total)
现在以类似的方式在其他陈述上工作。
还有一件事:既然你在每个if-statement
做同样的操作,你可以在这些陈述之前做到这一点。像这样:
total = (3 * kPad) + (3 * batGlove) + 45 + (3 * cricBall) + (5 * cricBat)
if psize == "s":
total = total + tsmall
print("The total cost of equipment is:", total)
再一次:对其他陈述也这样做。
以下评论的解决方案:
#calculate base price
total = 3 * (kPad + batGlove + cricBall) + 45 + 5*cricBat
#Loop three times, ask for an input and add the price per input to total
count = 0;
while count < 3:
#ask for input here
#add size-based price to total (with the if-statements)
count += 1
#exit loop and print the result
答案 1 :(得分:1)
如果3名球员中的每一名都有不同的T恤尺码,你可以这么做:
<input #placeAutocompleteInput style="max-width:100%;"
[placeholder]="placeholderText"
[matChipInputFor]="chipListPlaces"
[formControl]="mainSearchCtrl"
[matAutocomplete]="mainAutocomplete"
(keyup.enter)="onEnter($event)"/>
就像在另一个答案中所说的那样,只需计算玩家装备的总成本,并为每位玩家增加T恤的成本与总成本,之后打印总成本
答案 2 :(得分:0)
我认为您的方法可以是这样的:
要求每个球员3个T恤尺码输入
psize_player1 = input("enter the size of the player1(s/m/l/xl): ")
psize_player2 = input("enter the size of the player1(s/m/l/xl): ")
psize_player3 = input("enter the size of the player1(s/m/l/xl): ")
现在在设备的成本中,只有可变数量是T恤的价格 大小
cost of equipment = (3 * kPad) + (3 * batGlove) + (3 * cricBall) + (5
* cricBat) + price(psize_player1) + price(psize_player2) + price(psize_player3)
其中price(psize_player1)是根据T恤尺码返回价格的功能(见下一步)
定义一个检查尺寸和退货价格的功能。
def price(size):
if size == small:
return tsmall
elif size == med:
return tmed
elif size == large:
return tlar
elif size == extralarge:
return txl