# 第一题
import scipy.stats as stats
lower, upper = 40, 120
mu, sigma = 75, 8**0.5
#X表示含有最大最小值约束的正态分布
X = stats.truncnorm(
(lower - mu) / sigma, (upper - mu) / sigma, loc=mu, scale=sigma)#有区间限制的随机数
a = X.rvs(48)#取其中的5个数,赋值给a;a为array类型
score = [int(x) for x in a]
score.sort(reverse=True)
print(score[:5])
# 第二题
def check_gear_ratio(m, r, x):
if m < 2:
return False
last_gear_speed = r[-1]
if last_gear_speed == 0:
return False
first_gear_speed = r[0]
if first_gear_speed == 0:
return False
return first_gear_speed * x == last_gear_speed
# m = 3
# r = [1, 2, 3]
# x = 3
m = int(input('请输入齿轮个数:'))
r = []
for i in range(m):
r.append(float(input('请输入每个齿轮的半径:')))
x = float(input('请输入倍数:'))
result = check_gear_ratio(m, r, x)
print(result) # True