算額(その687)
和算問題あれこれ 2 令和5年7月の問題-No.2(『神壁算法』第53問)
https://gunmawasan.web.fc2.com/k-n-mondai.html
台形内に左斜と右斜の2本の線分を設ける。左斜,右斜,闊(高さ)の長さがそれぞれ 15 寸,5 寸,12 寸である。甲,乙を変化させたとき,台形の面積が最大になるときの甲,乙の長さを求めよ。
横倒しになっている台形であるが,下底(左側),下底(右側)の長さはそれぞれ固定されているので,甲によって増減する。したがって,上底,下底,闊により決まる面積も甲の関数になる。
面積(甲) = 闊*(sqrt(右斜^2 - 甲^2) + sqrt(左斜^2 - (-甲 + 闊)^2))/2
左斜,右斜,闊 がそれぞれ 15, 5, 12 ならば
面積(甲) = 6*sqrt(25 - 甲^2) + 6*sqrt(225 - (12 - 甲)^2)
である。甲を横軸,面積を縦軸に取り図を描いてみる。
include("julia-source.txt");
# julia-source.txt ソース https://blog.goo.ne.jp/r-de-r/e/ad3a427b84bb416c4f5b73089ae813cf
using SymPy
@syms 甲, 左斜, 右斜, 闊, 下底, 上底, 面積
(左斜, 右斜, 闊) = ( 15, 5, 12)
下底 = sqrt(左斜^2 - (闊 - 甲)^2)
上底 = sqrt(右斜^2 - 甲^2)
面積 = (下底 + 上底)*闊/2
面積 |> println
6*sqrt(25 - 甲^2) + 6*sqrt(225 - (12 - 甲)^2)
pyplot(size=(300, 200), grid=false, aspectratio=:none, label="", fontfamily="IPAMincho")
plot(面積, xlims=(0, 5), xlabel="甲", ylabel="面積")
図より,甲が3前後のときに面積が最大になることがわかる。
面積が最大になるときの甲は,面積の導関数を求めそれが 0 になるときの値である。方程式を解くことにより,甲 = 3 である。また,このとき面積を表す関数の甲にその値を代入すれば,最大値が 96 であることがわかる。
solve(diff(面積))[1] |> println
3
面積(甲 => 3) |> println
96
※コメント投稿者のブログIDはブログ作成者のみに通知されます