我正在处理一个个人问题,该问题要求我找到三个随机选择的0到1之间的实数之和大于1的概率。我试过用python编写代码,但我认为有一个错误:
import random
a = random.random()
b = random.random()
c = random.random()
n = int(input("Enter a range: "))
for i in range(n):
wanted = 0
if (a + b + c > 1):
wanted += 1
else:
wanted += 0
print("The ratio is " + str(wanted/n))
你能指出我的代码存在的问题吗?或者告诉我其他的问题?
对我来说似乎有两个问题:
- 每次你想创建一组新的随机数,所以它们应该进入循环
- 并且
wanted=0
应该在循环之前,每次都将其设置为0
import random
n = int(input("Enter a range: "))
wanted = 0
for _ in range(n):
a = random.random()
b = random.random()
c = random.random()
if a + b + c > 1:
wanted += 1
print(f"The ratio is {wanted/ n:.2%}")