・先生の解答ステキ。ですけど...ver1.1で
・mixed number/mixed fraction あります。
オリジナル
まなびスクエア 様 (0:00〜15:53) いつもお世話になっております。
↓ 【算◯◯◯◯◯◯クの難問】大人も解けない図形問題【小学生が解く算数】
https://youtu.be/Z9CmJSi6iOA
いつものsympyで(オリジナル Youtbe様の方法を参考に)
ver0.1
・次のソースコードはプログラムでありません。
プログラム風です。私には無理がありました。
・15:53 >あることに気づくはずです。
# ver0.1
from sympy import *
var('aka,ao',real=True,positive=True)
var('CF ',real=True,positive=True)
eq1 =Eq(aka+ao ,7)
eq2 =Eq(4+ao+aka,2*aka)
sol =solve([eq1,eq2],[aka,ao]) #;print(sol)
ao2,aka2=sol[aka],sol[ao] #;print(aka2,ao2)
BF =ao2 #;print(BF)
CF =solve(Eq(ao2/aka2,aka2/CF),CF)[0] #;print(CF)
print("#",BF+CF)
# 65/11
いつものsympyで
ver1.1
・サムネはサムネですけど。
・私は、サムネの45°の角度表示が、先生の不注意だと思いました。
(サムネの仕様ならゴメンナサイ。節約志向。)サムネに
二等辺表示? "マーク2箇所記入 又は EB=ED の表示 がいいですね。
先生のサムネだと、計算が助かります。大人には、線分BEが不要です。
# ver1.1
from sympy import *
AB,DA=7,4
A,B,D=map(Point,[(0,AB),(0,0),(DA,AB)])
C =Line(B,B+Point(1,0)).intersection(Line(D,B.rotate(pi/4,D)))[0] ;print(C)
print("#",B.distance(C))
# 65/11
ver1.2
・普通に。点Eの座標計算しました。
# ver1.2
from sympy import *
def to_mixed_fraction_str(num):
# 商(整数部分)と余り(分子)を取得
quotient, remainder = divmod(num.p, num.q)
# 「整数 + 分数」の形式で文字列を作成して返す
return f"{quotient} + {remainder}/{num.q}"
AB,DA=7,4
A,B,D=map(Point,[(0,AB),(0,0),(DA,AB)])
E =B.rotate(pi/2,B.midpoint(D))
C =Line(B,B+Point(1,0)).intersection(Line(D,E))[0]
print("#", B.distance(C) )
print("#",to_mixed_fraction_str(B.distance(C)))
# 65/11
# 5 + 10/11
(続けて)作図
・Gemini先生が作図できませんでした。ChatGPT先生にPNG図にしてもらいました。
PNG図のみ出力して下さい。
(ver1.1 ソースコードの表示を省略)
M 不要です。BDとBEの直線を追加して下さい。
ECも
考え方
・台形を三角形に分割するか、
三角形を連結して台形にするか、
の違いだと思いました。
・(最近の例) 三角形の2分割
いつもの? sympyの実行環境 と 参考のおすすめです。
sympyのweb上での実行方法
SymPy Live Shellで。
ソースコードの解説は、私よりGemini先生へのソースコードの丸投げがおすすめです。質問の追加はいくらでも。
モーダル対応?「実行して」。「作図して」「問題文章の丸投げ」いい時代です。
いつもと違うおすすめです。
Youtube のサムネの節約志向
sympy のdoc
・いらないカモ。
ver0.1
ver1.1
ver1.2
qiita内
