算額(その81)
福島県船引町 蚕養国神社 明治24年(1891)2月
http://www.wasan.jp/fukusima/kogaikuni.html
台形の中に,正六角形,正三角形が入っている。大頭が 97 寸のとき,正三角形の辺の長さを求めよ。
正六角形の一辺の長さを2として,それぞれの点の座標を決定して行く。
図の a, c の座標まで決めればよい。大頭は 5,a, c の距離が正三角形の一辺の長さ 5/√3 である。
using SymPy
sqrt((5sqrt(Sym(3))/2-5sqrt(Sym(3))/3)^2+(5//2)^2) |> println # a,c の距離
5*sqrt(3)/3
算額では「大頭が 97 寸のとき」なので,97/sqrt(3) = 56.0029761113937 である。
算額の答え「置三個 開平方 以除大頭」は「3 の平方根で大頭を割る」ということである。
97/√3
56.0029761113937
using Plots
function point(x, y, string="", color=:green, position=:left, vertical=:top; fontsize=10, mark=true)
mark && scatter!([x], [y], color=color, markerstrokewidth=0)
annotate!(x, y, text(string, fontsize, vertical, position, color))
end;
function segment(x1, y1, x2, y2, color=:black; linestyle=:solid, linewidth=0.5)
plot!([x1, x2], [y1, y2], color=color, linestyle=linestyle, linewidth=linewidth)
end;
function draw(more=false)
pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
plot(xlims=(-0.3, 6.2), ylims=(-0.3, 5.2))
hline!([0], color=:black, lw=0.5)
vline!([0], color=:black, lw=0.5)
plot!([√3, 0, 0, √3, 2√3, 2√3, √3], [0, 1, 3, 4, 3, 1, 0], color=:blue, lw=0.5)
plot!([0, 0, √3], [1, 0, 0])
plot!([0, 0, √3], [3, 5, 4])
segment(5√3/3, 0, 2√3, 1, :brown)
segment(2√3, 3, 5√3/2, 5/2, :green)
segment(2√3, 1, 5√3/2, 5/2, :red)
segment(5√3/2, 5/2, 10√3/3, 0, :magenta)
segment(5√3/2, 5/2, 10√3/3, 5/3, :blue)
segment(10√3/3, 5/3, 10√3/3, 0, :cyan)
if more
point(0.05, 2.5, "大 \n\n\n頭 ", :black, :right, mark=false)
point(5.9, 1.3, "小\n\n\n頭", :black, mark=false)
point(5√3/2, 5/2, " a:(5√3/2, 5/2)")
point(5√3/3, 0, " c:5√3/3")
point(10√3/3, 0, " b:10√3/3")
point(√3, 0, "√3")
point(2√3, 1, " (2√3, 1)")
point(2√3, 3, " (2√3, 3)")
point(√3, 4, " (√3, 4)")
point(10√3/3, 5/3, " (10√3/3, 5/3)")
end
end;
※コメント投稿者のブログIDはブログ作成者のみに通知されます