-1
def binomialco(p,k):
  Sum = 1
  Pro = 1
  for i in range(0,k):
    Sum = Sum*(p-i)
  for i in range(1,k+1):
    Pro = Pro*i
  return float(Sum/Pro)

def P0(s,n,v,h):
  athroisma = 0
  for i in range(0,s+1):
    dent= binomialco(n-1,i)*(v*h)**i
    athroisma+=dent
  return athroisma

s=input()
n=input()
v=input()
h=input()

print P0(s,n,v,h)

问题是当我输入以下内容时:,,s=2我应该得到。我得到的只是。有人可以帮助我吗?n=4v=float(1/30)h=31.330.0

4

1 回答 1

0

从你得到的猜测,你必须使用 py2。在这里你将不得不强迫float那是你必须的return float(Sum)/float(Pro)

这是一个小测试,让你明白为什么

>>> 1/30
0
>>> float(1/30)
0.0
>>> float(1)/float(30)
0.03333333333333333
于 2015-01-18T19:16:59.063 回答