本文へ移動
サポートシェアリングソリューション
OKWAVE Plus

このQ&Aは役に立ちましたか?

締切済み
※ ChatGPTを利用し、要約された質問です(原文:三角関数の計算がおかしい)

三角関数の計算がおかしい

2023/10/19 09:33

このQ&Aのポイント
  • 三角関数の計算において角度の入力精度が重要な理由は何でしょうか?底辺の長さを求める際にも正確な角度が必要なのでしょうか?
  • 三角関数の計算において、角度の小数点以下の精度が重要です。底辺の長さを求める際には正確な角度の値を使用する必要があります。
  • 三角関数の計算において、角度の精度は計算結果の正確さに影響を与えます。底辺の長さを求める際には、小数点以下の桁数を増やすほど正確な値が得られます。
※ 以下は、質問の原文です

三角関数の計算がおかしい

2014/05/05 22:56

詳しく書くと長くなりますので要約します。

図がなくて申し訳ないのですが、斜辺→1000、高さ→3,15、底辺→?として三角形を描きます。
三平方の定理を展開して、?²=1000²-3,15²
即ち 底辺?=999,9950387であるということは関数電卓で一瞬で計算することができます。

ただ、一旦角度を求めて逆算するとなんかおかしい数字になります。
まず最初に解ってる斜辺1000、高さ3,15はsinなのでsinで角度を求めると、
0,1804820039°になります。
0,18°としてtanで底辺?を求めると 
?=3,15÷tan0,18
?=1002,672843 と、ミリ単位で誤差が出て、100分台の精度でワークを削る機械加工において致命的なミスが出ます。

ただ小数点以下10桁、0,1804820039°として底辺?を求めると 
?=3,15÷tan0,1804820039
?=999,9950387 となり、三平方の定理を展開して計算した数値と同じ答えが出ます。

なぜこのようなことになるんでしょう?角度は小数点以下3桁まででいいや、と勝手に決めて計算したらダメですか?
関数電卓で小数点以下10桁まで入力しないといけない理由を教えて下さいませんか?1000万分の何°という数字が必要なんでしょうか?

皆さん回答ありがとうございます。多くの方から回答を頂き感謝しています。
しかし、すぐに理屈を理解できません。自分の無知を恥じながら時間がかかったとしても理解しようと思います。

現時点での認識ですが
?最終的に角度を求めるだけなら小数点以下3桁もあれば充分。
?しかし、求めた角度を使って底辺の長さを求めるなど、更に計算を続けるなら、小数点以下3桁ではダメ。できる限り正確に角度を入力する必要がある。
という認識で宜しいでしょうか?

その他の回答 (8件中 6~8件目)

2014/05/06 02:56
回答No.2

演算精度の問題ですね。

まず電卓では通常分数を扱えませんから近似小数で数値を入力することになります。

もうひとつは、tanθ関数の特性ですね
0度付近では傾きは1よりもかなり小さく、90度付近では非常に大きくなります。
今回は除算の除数に0度付近のtanを使っているので精度が悪く見えます。

もし精度を気にしたくなかったら、
電卓ではなく、
PCでMathematicaなどの数値演算ソフトで
任意精度数値計算ライブラリを使って計算すればいいです。

>0度付近では傾きは1よりもかなり小さく

をっと、0度付近では1にちかいので有効桁数を3桁取りたければ
角度も3桁以上の精度で指定すればよいですね。

質問からすると、5桁程度に有効桁数を必要としているように見えますので
角度側にも5~6桁程度の精度の数字を入れないとダメです。

このQ&Aは役に立ちましたか?

この質問は投稿から一年以上経過しています。
解決しない場合、新しい質問の投稿をおすすめします。

質問する
2014/05/06 00:02
回答No.1

よく理解してないが

1=0.99999の循環小数
http://ja.wikipedia.org/wiki/0.999...



桁落ち
http://technologicaladvance.blog.fc2.com/blog-entry-45.html

とか理解してれば

こまけーことなんかいいんだよ
と思うようになれるよ

お礼をおくりました

さらに、この回答をベストアンサーに選びますか?

ベストアンサーを選ぶと質問が締切られます。
なおベストアンサーを選びなおすことはできません。