一段a米的绳子,随机切两刀,分成三段,求能够组合成一个三角形的概率?

根据题目意思有:
0 0 0 其图示如下,程序:

import matplotlib.pyplot as plt
import numpy as np

# 绳子的长度为A
A = 1

# x1
x1 = np.arange(A, 0, -0.01)
# y1
y1 = np.arange(0, A, 0.01)
# x2
x2 = np.arange(A/2, 0, -0.01)
# y2
y2 = np.arange(0, A/2, 0.01)

# x1+y1=A直线
plt.plot(x1, y1)
# x2+y2=A直线
plt.plot(x2, y2, color='red', linestyle='--')
# 阴影
plt.fill_between(x1, y1, 0, facecolor='pink')

# 显示坐标轴名称
plt.xlabel('x')
plt.ylabel('y')
# 设置坐标轴区间
plt.xlim((0,A))
plt.ylim((0,A))
# 显示图例
plt.title('x+y=A(A='+str(A)+')')
# 带网格的图
plt.grid()
plt.show()

一段a米的绳子,随机切两刀,分成三段,求能够组合成一个三角形的概率?_第1张图片
根据三角形三条边的关系,需要同时满足如下三个条件:
x+y>a-x-y (4)
x+(a-x-y)>y (5)
y+(a-x-y)>x (6)
可以推得:
x+y>a/2 (7)
0 0

 import matplotlib.pyplot as plt
import numpy as np

# 绳子的长度为A
A = 1

# x1
x1 = np.arange(A, 0, -0.01)
# y1
y1 = np.arange(0, A, 0.01)
# x2
x2 = np.arange(A/2, 0, -0.01)
# y2
y2 = np.arange(0, A/2, 0.01)
# line2
line2 = A/2

# x1+y1=A直线
plt.plot(x1, y1)
# x2+y2=A/2直线
plt.plot(x2, y2, color='red', linestyle='--')
plt.text(0.4,
         0.1,  #文字的起始位置
         'x+y>A/2',
         fontsize=9,
         verticalalignment="top",
         horizontalalignment="right")
# y=A/2直线
plt.vlines(x=line2, ymin=0, ymax=1, color='red', linestyle='--')
plt.annotate(r'y, #text和箭头一起的文字
             xy=(A-0.05,A/2), #xy箭头起始位置
             xytext=(A-0.1,A/2+0.05), #xytext文字起始位置
             #textcoords='offset points',
             fontsize=9,
             arrowprops=dict(arrowstyle="->",connectionstyle="arc3"))  #arrowprops箭头样式
# x=A/2直线
plt.hlines(y=line2, xmin=0, xmax=1, color='red', linestyle='--')
plt.text(A/2,
         A,  #文字的起始位置
         'x,
         fontsize=9,
         verticalalignment="top",
         horizontalalignment="right")

# 阴影
plt.fill_between(x2,  #曲线x坐标
                 A/2-x2,  #覆盖的下限,第一函数的y
                 A/2,   #覆盖的上限,第2个函数的y
                 #where=x2+y2
                 facecolor='dodgerblue',
                 alpha=60)

# 显示坐标轴名称
plt.xlabel('x')
plt.ylabel('y')
# 设置坐标轴区间
plt.xlim((0,A))
plt.ylim((0,A))
# 显示图例
plt.title('x+y=A(A='+str(A)+')')
# 带网格的图
plt.grid()
plt.show()

所求蓝色阴影面积就是满足题目要求的区域,即S_蓝=1/4 S_红=1/2×A/2×A/2,其概率是1/4。
一段a米的绳子,随机切两刀,分成三段,求能够组合成一个三角形的概率?_第2张图片

你可能感兴趣的:(机器学习)