???・ Sympy コード(余弦定理で証明)
ChatGPT先生へ
質問リスト
・質問リストの追番は無視して下さい。1個ずつです。途中の回答表示は省略しています。
# 質問リスト
1. 2つの角が60度の三角形は。
2. すべての辺の長さがなるのはどうしてですか。
3. sympy のソースコードで教えて下さい。
4. 私の質問をMarkdown形式でリスト化して出力して。Markdown形式でリストからアスタリスクは削除して。 1行目に、# 質問リスト の文字を出力して。
結論
したがって、3つの角がすべて等しい三角形では、3つの辺の長さも自動的に等しくなる、というわけです。これが「正三角形」です。
もっと言えば、これは「三角形の合同条件の逆」でもあり、角が等しいなら辺も等しいという対称性に基づいています。
sympy のソースコードで教えて下さい。
Sympy コード(余弦定理で証明)
from sympy import symbols, cos, Eq, simplify, solve, pi
# 辺の長さを記号で定義(a, b, c)
a, b, c = symbols('a b c', positive=True)
# 各角が 60 度(ラジアンで π/3)
angle = pi / 3
# 余弦定理: c^2 = a^2 + b^2 - 2ab*cos(C)
# 各辺に対して適用(ここでは仮に角が全部60度であるとして)
# 余弦定理の3式(C, A, Bの向かいの辺)
eq1 = Eq(c**2, a**2 + b**2 - 2*a*b*cos(angle))
eq2 = Eq(a**2, b**2 + c**2 - 2*b*c*cos(angle))
eq3 = Eq(b**2, a**2 + c**2 - 2*a*c*cos(angle))
# cos(60度) = 1/2
# 簡単化して辺の等しさを調べる
simplified1 = simplify(eq1.subs(cos(angle), 1/2))
simplified2 = simplify(eq2.subs(cos(angle), 1/2))
simplified3 = simplify(eq3.subs(cos(angle), 1/2))
print("式1:", simplified1)
print("式2:", simplified2)
print("式3:", simplified3)
# 例えば、simplified1 から a = b = c となるか調べる(解を求める)
sol = solve(simplified1, c)
print("c の解:", sol)
出力イメージ(一部)
式1: Eq(c**2, a**2 + b**2 - a*b)
c の解: [sqrt(a**2 + b**2 - a*b)]
Gemini先生へ
copilot先生へ
いつもの? sympyの実行環境と 参考のおすすめです。
いつもと違うおすすめです。
wikipedia