算額(その357)
山形県山形市南原町 熊野神社
山形算額勝負-湯殿山神社を目指せ-
https://www.sci.yamagata-u.ac.jp/wasan/pdf/20180711SSEP.pdf
(5) 大円の中に小円と正方形が入っている。正方形の一辺の長さが 6 寸,小円の直径が 3 寸のとき,大円の半径を求めよ。
大円の半径,中心座標を r, (0, 0)
小円の半径,中心座標を r1, (0, r - r1)
その他,下図のように正方形の一辺の長さの1/2 を a,原点から正方形の下辺までの距離を b とし,以下の連立方程式を解き,一般解を求める。
include("julia-source.txt");
using SymPy
@syms r, r1, a, b
eq1 = b^2 + a^2 - r^2
eq2 = (2a - b) - (r - 2r1)
res = solve([eq1, eq2], (r, b))
1-element Vector{Tuple{Sym, Sym}}:
((5*a^2 + 8*a*r1 + 4*r1^2)/(4*(a + r1)), (a + 2*r1)*(3*a + 2*r1)/(4*(a + r1)))
大円の半径は (5*a^2 + 8*a*r1 + 4*r1^2)/(4*(a + r1)) である。
a, r1 に問にある数値を代入し,答え(数値解)を求める。
(a, r1) = (6/2, 3/2)
4*(a + r1) |> println
(5*a^2 + 8*a*r1 + 4*r1^2)/(4*(a + r1)) |> println
(a + 2*r1)*(3*a + 2*r1)/(4*(a + r1)) |> println
18.0
5.0
4.0
大円の半径は 5 寸(直径は 10 寸)である。
using Plots
function draw(more)
pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
(a, r1) = (6/2, 3/2)
(r, b) = ((5*a^2 + 8*a*r1 + 4*r1^2)/(4*(a + r1)), (a + 2*r1)*(3*a + 2*r1)/(4*(a + r1)))
@printf("大円の直径 = 2r = %g\n", 2r)
plot()
circle(0, 0, r, :blue)
circle(0, r - r1, r1, :green)
rect(-3, r - 2r1 - 2a, a, r - 2r1, :red)
if more
delta = (fontheight = (ylims()[2]- ylims()[1]) / 500 * 10 * 2) /3 # size[2] * fontsize * 2
point(0, r - r1, " r-r1")
point(a, 0, " a", :red)
point(0, -b, " -b", :red)
point(0, r - 2r1, " r - 2r1")
point(0, 2a - b, "2a-b ", :red, :right)
hline!([0], color=:black, lw=0.5)
vline!([0], color=:black, lw=0.5)
else
plot!(showaxis=false)
end
end;