На крыше коттеджа установлен флюгер в форме прямоу...
作成日: 2025年5月28日
作成日: 2025年5月28日
На крыше коттеджа установлен флюгер в форме прямоугольной трапеции. Он прикреплён коси боковой стороной. Высота флюгера - 10 см, длина верхней стороны - 15 см, а нижней стороны - 35 см. В точке пересечения диагоналей трапеции сидит бабочка. Дует ветер, и она катается на флюгере, как на карусели. Какое расстояние бабочка проходит за то время, за которое самая удалённая от оси точка флюгера проходит 10 метров? Ответ запишите в метрах. Запишите в поле ответ в виде целого числа или конечной десятичной дроби.
pythonA = sp.Point(0,0) B = sp.Point(15,0) C = sp.Point(35,10) D = sp.Point(0,10) P = sp.Line(A,C).intersection(sp.Line(B,D))[0] P Point2D(21/2, 3)
python# Represent axis line through B and C line_axis = sp.Line(B,C) # distance from point P to line dist_P = line_axis.distance(P) # farthest distance among vertices # compute distances dA = line_axis.distance(A) dD = line_axis.distance(D) dC = 0 dB = 0 dist_max = max(float(dA), float(dD)) dist_P, dist_max (21*sqrt(5)/10, 15.652475842498529)
pythonfloat(dA), float(dD) (6.708203932499369, 15.652475842498529)
pythonfloat(dist_P/ dist_max) 0.30000000000000004
pythona,b,h = sp.symbols('a b h', positive=True) A = sp.Point(0,0) D = sp.Point(0,h) B = sp.Point(a,0) C = sp.Point(b,h) P = sp.Line(A,C).intersection(sp.Line(B,D))[0] P Point2D(a*b/(a + b), a*h/(a + b))
pythonimport random, math def ratio(a,b,h): A = sp.Point(0,0) B = sp.Point(a,0) C = sp.Point(b,h) D = sp.Point(0,h) line_axis = sp.Line(B,C) P = sp.Line(A,C).intersection(sp.Line(B,D))[0] dist_P = line_axis.distance(P) # choose distances of A or D whichever bigger for farthest from axis dist_A = line_axis.distance(A) dist_D = line_axis.distance(D) dist_max = max(dist_A, dist_D) return float(dist_P/dist_max) for _ in range(5): a = random.uniform(1,20) b = random.uniform(a, a+30) h = random.uniform(1,15) print(a,b,h, ratio(a,b,h))
pythondef ratio_expected(a,b): return a/(a+b) for a,b,h,_ in [(11.7121,36.79,2.6,0)]: print(ratio_expected(a,b))
pythonfor _ in range(5): a = random.uniform(1,20) b = random.uniform(a+0.1,a+30) h = random.uniform(1,15) r1 = ratio(a,b,h) r2 = a/(a+b) print(abs(r1-r2) < 1e-10)
Высоты и углы считать не нужно — достаточно соотношений сторон.
Обозначим основания трапеции:
верхнее — , нижнее — .
Ось вращения совпадает с боковой стороной.
Самая дальняя от оси точка — правый нижний угол (его радиус ).
Из свойства трапеции пересечение её диагоналей делит каждую диагональ в отношении оснований:
Поэтому расстояние точки (бабочки) до оси
Отношение радиусов
За то же время путь пропорционален радиусу, поэтому
Ответ: 3