- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:cプログラム)
Cプログラムで三角形の面積を求める方法
このQ&Aのポイント
- Cプログラムで三角形の面積を求めるプログラムについてエラーが発生しています。
- エラーの内容は「sin関数が未定義」というものです。
- このエラーを修正する方法について教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
scanf("%f %f %f",&b,&a,&c); ↓ scanf("%lf %lf %lf",&b,&a,&c); doubleで宣言してるから、doubleで、受け取れるようにするとかじゃないか。
その他の回答 (3)
- zbatno1
- ベストアンサー率52% (18/34)
回答No.3
ANo.1です。 数値入力のフォーマットは大丈夫でしょうか? 3つの数値は半角スペースで並べる必要があります。 scanfを使う前に、固定値で試してみてはいかがでしょうか?
質問者
お礼
できました ありがとうございました!
- D-Matsu
- ベストアンサー率45% (1080/2394)
回答No.2
gccに渡すオプションですかね。 math.hをインクルードする時には数学ライブラリをリンクするよう明示的に指定する必要があります。 #あえてオプションは書きません。検索すれば簡単に見つかります
質問者
お礼
回答ありがとうございます -lmをつけ忘れていたようです しかし今度は AC間の長さと角度と底辺ABを入力してください 2 30 3 面積は-19.912377です ように正しい答えは出てきませんでした どこを修正すればいいでしょうか? 長さや角度などの数値は上限はあるようですが指定はされてません
- zbatno1
- ベストアンサー率52% (18/34)
回答No.1
コーディングには問題ないようです。 Microsoft Visual C++ なら素直に通りました。 お使いのコンパイラが「sin」を理解できないのではないでしょうか? 「sin」の仕様を確認してみてください。
質問者
お礼
回答ありがとうございます コンパイルするときに-lmをつけ忘れてたのが原因のようで動作はしました しかし以下の用に今度は正しい値が得られなくなってしまいました AC間の長さと角度と底辺ABを入力してください 2 30 3 面積は-19.912377です
お礼
できました ありがとうございました!