我很难解决这个问题。我是Python的新手,并为一个介绍类做了一个作业。基本上我们使用旧的任务,我们计算自行车骑手产生的动力并添加代码以获得所需的输出。无论如何,这是我到目前为止:
def powerPerSec():
M = float(input("What is the mass of the rider in kg?"))
Mb = float(input("What is the mass of the bike in kg?"))
V = float(input("What is the velocity of the rider in m/s?"))
Cfd = float(input("What is the coefficient of drafting?"))
G = 9.8
K = 0.18
Cr = 0.001
Pair = K * Cfd * (V**3)
Proll = Cr * G * (M + Mb) * V
return int(Pair + Proll)
def main():
print ("The rider is generating", powerPerSec(), "watts.")
main()
现在,问题的下一部分是,“为骑手调用powerPerSec 5个不同的质量值,质量每次增加4公斤。”指令说所有计算和函数调用都需要在main函数中完成。令我困惑的是如何在主函数中完成所有计算而不必消除powerPerSec函数?如何从main函数中更改powerPerSec函数中的局部变量?创建一个类会这样做,以及如何?我的教授措辞问题的方式有点令人困惑和含糊。任何帮助是极大的赞赏!
编辑 _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ ___
好的,所以我觉得我已经弄明白了。我有点洗牌,因为我在循环和输入方面遇到了麻烦。这是我最终得到的结果,它给出了理想的结果。我不是100%肯定这是我教授想要的,因为问题的措辞非常令人困惑,但是它按照需要工作,所以我很满意。
def powerPerSec(M, Mb, V, Cfd):
G = 9.8
K = 0.18
Cr = 0.001
return (K * Cfd * (V**3) + Cr * G * (M + Mb) * V)
def main():
M = float(input("What is the mass of the rider in kg?"))
Mb = float(input("What is the mass of the bike in kg?"))
V = float(input("What is the velocity of the rider in m/s?"))
Cfd = float(input("What is the coefficient of drafting?"))
n=0
while n < 5:
Psec = powerPerSec(M, Mb, V, Cfd)
n = n + 1
print ("A rider with a mass of", M , "kg is generating %.2f" % Psec , "watts.")
M = M + 4
main()
感谢您的提示,伙计们。