0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

大人用です。中学受験2019年大阪星光学院中「【頭の良い人しか解けない難問】天才小学生が解く図形...」様を、計算はsympyで作図は手抜きのつもりでした。

0
Last updated at Posted at 2026-08-20

・(再かも)ページ最後にリンクあります。

オリジナル

まなびスクエア 様 (0:00〜14:19) いつもお世話になっております。
↓【頭の良い人しか解けない難問】天才小学生が解く図形【中学受験の算数】
https://youtu.be/3Sa5_6rxU34

いつものsympyで(オリジナル Youtbe様の方法を参考に)

ver0.1

・先生の丸写しです。図形の証明を省略です。△FCE'∽FDA
・求解は、最短距離の周長じゃなく、面積 なのがステキ。そうかも。 
・次のソースコードはプログラムでありません。
 プログラム風です。無理がありました。
 

# ver0.1
from sympy import *
var('iti_maru,nii_maru,san_maru',real=True,positive=True)
DA =15
CF =nii_maru
DF =san_maru
rep={nii_maru:2*iti_maru,san_maru:3*iti_maru}
CD =(CF+DF).subs(rep)                              #;print(CD)
sol_iti_maru=solve(Eq(CD,DA),iti_maru)[0]          #;print(sol_iti_maru)
CF=nii_maru=2*sol_iti_maru
CD=goo_maru=5*sol_iti_maru
EEd =20
EEdF=Rational(1,2)*EEd*CF                          #;print(EEdF)
AEF =Rational((goo_maru-nii_maru),nii_maru)*EEdF         
print("#",AEF)
# 90

いつもの sympyで

ver1.1

・鏡写しを、EじゃなくAにしました。A→E→F→A。point.reflect(ln)

# ver1.1
from sympy import *
AB=BC=CD=DA=15
A,B,C,D,E=map(Point,[(0,AB),(0,0),(BC,0),(BC,AB),(Rational(1,3)*BC,0)])
Ad       =A.reflect(Line(C,D))                        #;print(Ad)
F        =Line(C,D).intersection(Line(E,Ad))[0]        ;print(F)
print("#",Triangle(A,E,F).area)
# 90

ver1.2

・共テ風。平方完成?とグラフを忘れていました。

(Gemini先生へ)平方完成の変換?とグラフを出力をお願いします。
(ver1.3ソースコード省略)

未確認

ver1.3

・大学入試2次試験風。微分diff です。

# ver1.3
from sympy import *
var('Fy',real=True,positive=True)
AB=BC=CD=DA=15
A,B,C,D,E=map(Point,[(0,AB),(0,0),(BC,0),(BC,AB),(Rational(1,3)*BC,0)])
F        =Point(BC,Fy)
L_AEF    =A.distance(E)+E.distance(F)+F.distance(A)                     #;print("#",L_AEF)
m_Fy     =solve(Eq(diff(L_AEF),0),Fy)[0]                                #;print(m_Fy)
print("#",Triangle(A,E,F).area.subs({Fy:m_Fy}))
# 90

ver1.4

・素直に?,最小値minimum ,Intervalです。

# ver1.4
from sympy import *
var('Fy',real=True,positive=True)
AB=BC=CD=DA=15
A,B,C,D,E=map(Point,[(0,AB),(0,0),(BC,0),(BC,AB),(Rational(1,3)*BC,0)])
F        =Point(BC,Fy)
L_AEF    =A.distance(E)+E.distance(F)+F.distance(A)                     #;print("#",L_AEF)
m_AEF    =minimum(L_AEF,Fy,Interval(0,CD))                              #;print(m_Fy)
m_Fy     =solve(Eq(L_AEF,m_AEF),Fy)[0]                                  #;print(m_Fy)
print("#",Triangle(A,E,F).area.subs({Fy:m_Fy}))
# 90

・ver1.1 の作図
 A→E→F→A。点Eのバケツを取りに寄る。川はCD。
 Fで水を汲んで戻る。矢印追加してもらえばヨカッタ。
 (水が重ければA→E→D?→A)

Figure_1.png

いつもの? sympyの実行環境 と 参考のおすすめです。

sympyのweb上での実行方法

SymPy Live Shellで。
ソースコードの解説は、私よりGemini先生へのソースコードの丸投げがおすすめです。質問の追加はいくらでも。
モーダル対応?「実行して」。「作図して」「問題文章の丸投げ」いい時代です。

(テンプレート)

いつもと違うおすすめです。

Qiita内で

sympy のdoc

・いらないカモ。

ver0.1

ver1.1

ver1.2

ver1.3

ver1.4

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?