从随机生成的数字中计算出一个始终为正的值

Calculate a value from randomly generated numbers which is always positive

我试图确保值 tDiscriminant 始终为正。正如您在下面看到的,它是根据三个随机生成的数字计算得出的。

s = random.uniform(1,100)
sRounded = round(s,1)   
v = random.uniform(1,50)
vRounded = round(v,1)   
a = random.uniform(1,20)
aRounded = round(a,1)
tDiscriminant = (vRounded*vRounded)-(2*aRounded*sRounded)
tDiscriminantRooted = math.sqrt(tDiscriminant)

如何才能使 tDiscriminant 为负数时,必须再次生成值 sva,直到 tDiscriminant 是阳性吗?

尝试

import random
tDiscriminant = -1
while tDiscriminant <= 0:
  s = random.uniform(1,400)
  sRounded = round(s,1)   
  v = random.uniform(1,50)
  vRounded = round(v,1)   
  a = random.uniform(1,20)
  aRounded = round(a,1)
  tDiscriminant = (vRounded*vRounded)-(2*aRounded*sRounded)
tDiscriminantRooted = math.sqrt(tDiscriminant)