tand(10)=tand(20)*tand(30)*tand(40) を示せ「2013年千葉大学・全学共通第10問」をwolframAlphaとsympyでやってみたい。

オリジナル

https://ameblo.jp/mathisii/entry-12764545576.html



上と同じです。大学入試数学問題集成＞【10】

https://mathexamtest.web.fc2.com/2013/201310241/2013102410100mj.html#top-0110


# wolframAlphaで

```
tand(10)-tand(20)*tand(30)*tand(40)
結果 0
```

https://www.wolframalpha.com/input?i=tand%2810%29-tand%2820%29*tand%2830%29*tand%2840%29&lang=ja

```
t=10,tand(t*1)-tand(t*2)*tand(t*3)*tand(t*4)
近似値 tan(t°) - tan((2 t)°) tan((3 t)°) tan((4 t)°)≈0.×10^-150
```

https://www.wolframalpha.com/input?i=t%3D10%2Ctand%28t*1%29-tand%28t*2%29*tand%28t*3%29*tand%28t*4%29&lang=ja

# sympyで(ますいしい様の手順で)
勉強中
「tan10°=x(0<x,1/sqrt(3))とおく。」
???不等号の範囲の意味を教えて下さい。???


# sympyでうまくいきませんでした。
ますいしい様がご指摘の「盲点」通りかもしれません。
```python
from sympy import *
x,t=symbols("x,t",real=True,positive=True)
def tand(x):
    return tan(x*pi/180)
print("#",float(tand(10)-tand(20)*tand(30)*tand(40)))
print("#",      tand(10)-tand(20)*tand(30)*tand(40))
t=10
print("#",float(tand(t*1)-tand(t*2)*tand(t*3)*tand(t*4)))
print("#",      tand(t*1)-tand(t*2)*tand(t*3)*tand(t*4))
# 2.9545531576914354e-126
# -sqrt(3)*tan(pi/9)*tan(2*pi/9)/3 + tan(pi/18)
# 2.9545531576914354e-126
# -sqrt(3)*tan(pi/9)*tan(2*pi/9)/3 + tan(pi/18)
```

# sympyで(hatena上野尚人うえのたかと様の手順で)

https://uen0.hateblo.jp/entry/2013/04/18/012049

やって見ました状態です。
以下のsympyは、正しいかどうかアドバイスを下さい。よろしくお願いします。

```python
from sympy import *
x=symbols("x",real=True,positive=True)
t10,t20,t30=symbols("t10,t20,t30",real=True,positive=True)
tp=tan(t30-t10)
my20=Eq(tp,simplify((expand(tp,trig=True))))
my20_rhs=my20.rhs.subs({tan(t10):x,tan(t30):1/sqrt(3)}).simplify()
print("#20",my20_rhs)
# 40
tp=tan(t30+t10)
my40=Eq(tp,simplify((expand(tp,trig=True))))
my40_rhs=my40.rhs.subs({tan(t10):x,tan(t30):1/sqrt(3)}).simplify()
print("#40",my40_rhs)
# 文字列の置換にしました。subsがうまく置換できませんでした。
var('t10s')
tp=tan(t10+t10s)
my21=Eq(tp,simplify((expand(tp,trig=True))))
my21_str=str(my21.rhs).replace("tan(t10)", "x").replace("tan(t10s)", "x")
tp=tan(t20+t10)
my31=Eq(tp,simplify((expand(tp,trig=True))))
my31_rhs=sympify(str(my31.rhs).replace("tan(t10)", "x").replace("tan(t20)", my21_str))
my31_rhs=my31_rhs.simplify()
print("#31",my31_rhs)
print("#  ",sympify(str((my20_rhs*my40_rhs).simplify()*my31_rhs)))
#20 (-3*x + sqrt(3))/(sqrt(3)*x + 3)
#40 (-3*x - sqrt(3))/(sqrt(3)*x - 3)
#31 x*(x**2 - 3)/(3*x**2 - 1)
#   x
```

# 参考
公式?を見つけました。wikipediaの英語版にありました。Similarly,
Identities without variables＜

https://en.wikipedia.org/wiki/List_of_trigonometric_identities#Identities_without_variables

wikipediaの日本語版に見つけることができませんでした。
特定の角度に関する式＜

https://ja.m.wikipedia.org/wiki/%E4%B8%89%E8%A7%92%E9%96%A2%E6%95%B0%E3%81%AE%E5%85%AC%E5%BC%8F%E3%81%AE%E4%B8%80%E8%A6%A7#%E7%89%B9%E5%AE%9A%E3%81%AE%E8%A7%92%E5%BA%A6%E3%81%AB%E9%96%A2%E3%81%99%E3%82%8B%E5%BC%8F

以下　google検索に、**多数**ありました。千葉大学の有名な入試問題.....
tan 20 30 40 千葉大学　

https://www.google.com/search?q=tan+20+30+40+%E5%8D%83%E8%91%89%E5%A4%A7%E5%AD%A6&rlz=1C1CHBD_jaJP908JP908&sxsrf=ALiCzsYadca_Z2jMuNwPnPFCsgYeGnftyw%3A1663489601403&ei=QdYmY6icGIOloASQz7egBQ&ved=0ahUKEwjowJ3W9Z36AhWDEogKHZDnDVQQ4dUDCA4&uact=5&oq=tan+20+30+40+%E5%8D%83%E8%91%89%E5%A4%A7%E5%AD%A6&gs_lcp=Cgxnd3Mtd2l6LXNlcnAQAzIFCAAQogQ6CggAEEcQ1gQQsANKBAhBGABKBAhGGABQ8QxYo0BgikZoA3ABeACAAc8CiAGyCpIBBjExLjMtMZgBAKABAcgBCsABAQ&sclient=gws-wiz-serp



以下は、いくらでも問題が作れるという事でしょうか？

https://www.chart.co.jp/subject/sugaku/suken_tsushin/94/94-3.pdf