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

根据题目意思有:
0<a-x-y<a → x+y<a (1)
0<x<a (2)
0<y<a (3)
其图示如下,程序:

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()

在这里插入图片描述
根据三角形三条边的关系,需要同时满足如下三个条件:
x+y>a-x-y (4)
x+(a-x-y)>y (5)
y+(a-x-y)>x (6)
可以推得:
x+y>a/2 (7)
0<y<a/2 (8)
0<x<a/2 (9)

 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<A/2', #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<A/2',
         fontsize=9,
         verticalalignment="top",
         horizontalalignment="right")

# 阴影
plt.fill_between(x2,  #曲线x坐标
                 A/2-x2,  #覆盖的下限,第一函数的y
                 A/2,   #覆盖的上限,第2个函数的y
                 #where=x2+y2<A/2, #垂直方向上, bool,horizontal regions
                 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。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叶老师讲大数据

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值