• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:複素数代入解(C言語))

複素数代入解(C言語)

このQ&Aのポイント
  • 複素数に代入するプログラムを作成したがエラーが出てしまう
  • 多項式の係数と複素数を代入して計算するプログラムを作成
  • 複素数の定義と演算を行い、代入計算を行っているがエラーが発生

質問者が選んだベストアンサー

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.2

エラーが出ているのは > a[i]*c_pow(b,i) この部分ですね。 「double型とcomp型とのかけ算」なんて演算はどこにも定義されてませんので、 その2つに「*」演算子を適用することはできません。 comp型同士の足し算用に c_add 関数を作ったように、 double型×comp型を計算する c_mul 関数を作って、 > tmp=c_add(tmp, c_mul(a[i], c_pow(b,i))); のようにしましょう。

muhmi
質問者

お礼

なるほど! 構造体のメンバがdoubleなので、 メンバを各々かけてくれるものだと思ってました(汗 無事、プログラムできました。ありがとうございました。

その他の回答 (1)

  • asuncion
  • ベストアンサー率33% (2127/6289)
回答No.1

> エラーが出てしまいます。 コンパイル時ですか?実行時ですか? エラーメッセージは? もし、当方でコンパイルしてみる必要があるならば、 main関数の定義などを含むコード全体を載せてください。

muhmi
質問者

お礼

コンパイルに失敗です^^; エラーメッセージは書くべきでした。。すいません。 main自体は、複素数代入解を求めるものではなくて、 伝達関数(有理多項式)から周波数応答を求めるプログラムなので、 書いてません。というか、わからなくて載せられません(笑

関連するQ&A