裏 RjpWiki

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

算額(その85)

2022年12月29日 | Julia

算額(その85)

福島県田村郡三春町平沢担橋 諏訪神社 大正15年(1926)8月
http://www.wasan.jp/fukusima/miharusuwa.html

交差する 2 個の外円の中に,甲円 3 個,乙円 2 個が入っている。乙円の径が 1 寸のとき,甲円の径はいくつか。

甲円の半径を r として方程式を解く。


using SymPy

@syms r::positive;
eq1 = (r + 1//2)^2 + r^2 - (2r - 1//2)^2
solve(eq1)[1] |> println

   3/2

甲円の径は 3 である。

using Plots

function circle(ox, oy, r, color=:red; beginangle=0, endangle=360)
 θ = beginangle:0.1:endangle
 x = r.*cosd.(θ)
 y = r.*sind.(θ)
 plot!(ox .+ x, oy .+ y, color=color, linewidth=0.5)
end;

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 draw(more=false)
   pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
   r = 3/2
   plot()
   circle(0, 0, r)
   circle(0, 2r, r)
   circle(0, -2r, r)
   circle(0, r, 2r, :blue)
   circle(0, -r, 2r, :blue)
   circle(r + 1/2, 0, 1/2, :green)
   circle(-r - 1/2, 0, 1/2, :green)
   if more
       point(0, 2r, "2r ", :red, :top, :right)
       point(0, r, "r ", :red, :top, :right)
       point(r, 0, "r ", :red, :top, :right)
       point(r+1, 0, "  r+1", :red, :top, :left)
       hline!([0], color=:black, lw=0.5)
       vline!([0], color=:black, lw=0.5)
   end
end;

 

 


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

コメントを投稿

Julia」カテゴリの最新記事