裏 RjpWiki

Julia ときどき R, Python によるコンピュータプログラム,コンピュータ・サイエンス,統計学

算額(その1339)

2024年10月08日 | Julia

算額(その1339)

岐阜県垂井町 西法寺 令和6年(2024)
http://www.wasan.jp/gifu/saihoji.html
算法点竄指南録 百丗一
https://kokusho.nijl.ac.jp/biblio/100301503/60?ln=ja

キーワード:直角三角形,正方形,面積
#Julia, #SymPy, #算額, #和算

直角三角形の中に正方形を容れる。甲積が54歩(平方寸),乙積が 96 歩のとき,鈎,股はいかほどか。

鈎,股を「鈎」,「股」
正方形の一辺の長さを a
とおき,以下の連立方程式を解く。

include("julia-source.txt");

using SymPy
@syms 鈎::positive, 股::positive, a::positive,
     甲積::positive, 乙積::positive;
eq1 = a*(鈎 - a)/2 - 甲積
eq2 = a*(股 - a)/2 - 乙積
eq3 = (甲積 + 乙積 + a^2) - 股*鈎/2
res = solve([eq1, eq2, eq3], (鈎, 股, a))[1]

   (sqrt(2)*甲積^(1/4)*(sqrt(乙積) + sqrt(甲積))/乙積^(1/4), sqrt(2)*乙積^(1/4)*(sqrt(乙積) + sqrt(甲積))/甲積^(1/4), sqrt(2)*乙積^(1/4)*甲積^(1/4))

甲積,乙積が 54 歩,96 歩 のとき,鈎は 21 寸,股は 28 寸である。

res[1](甲積 => 54, 乙積 => 96).evalf() |> N |> println
res[2](甲積 => 54, 乙積 => 96).evalf() |> N |> println

   21.0
   28.0

ちなみにこのとき,正方形の一辺の長さは 12 寸である。

res[3](甲積 => 54, 乙積 => 96).evalf() |> N |> println

   12.0

function draw(甲積, 乙積, more)
   pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
   (鈎, 股, a) = (sqrt(2)*甲積^(1/4)*(sqrt(乙積) + sqrt(甲積))/乙積^(1/4), sqrt(2)*乙積^(1/4)*(sqrt(乙積) + sqrt(甲積))/甲積^(1/4), sqrt(2)*乙積^(1/4)*甲積^(1/4))
   plot([0, 股, 股, 0], [0, 0, 鈎, 0], color=:blue, lw=0.5)
   rect(股 - a, 0, 股, a, :red)
   if more
       delta = (fontheight = (ylims()[2]- ylims()[1]) / 500 * 10 * 2) /3  # size[2] * fontsize * 2
       hline!([0], color=:gray80, lw=0.5)
       vline!([0], color=:gray80, lw=0.5)
       point(股 - a/3, (3a + 鈎)/4, "甲積", :blue, :center, :vcenter, mark=false)
       point(2(股 - a)/3, a/4, "乙積", :blue, :center, :vcenter, mark=false)
       point(股 - a, 0, " a", :red, :left, :bottom, delta=delta) 
       point(股, a, "(股,a) ", :red, :right, :bottom, delta=delta) 
       point(股, 0, "股 ", :red, :right, :bottom, delta=delta) 
       point(股, 鈎, "(股,鈎) ", :blue, :right, :bottom, delta=delta) 
   end  
end;

draw(54, 96, true)

 


コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 算額(その1338) | トップ | 算額(その1340) »
最新の画像もっと見る

コメントを投稿

Julia」カテゴリの最新記事