![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?c9bd177)
n次の実多項式に複素数を代入するプログラムを教えてください。
typedef struct{
double r;
double i;
}comp;
/*複素数の和*/
comp c_add(comp a,comp b){
comp c;
c.r = a.r + b.r;
c.i = a.i + b.i;
return(c);
}
/*複素数のべき乗*/
comp c_pow(comp a,int n){
comp c;
int i;
double tpr,tpi;
c.r = a.r; c.i = a.i;
for(i=1;i<n;i++){
tpr = c.r; tpi = c.i;
c.r = tpr*a.r - tpi*a.i;
c.i = tpr*a.i + tpi*a.r;
}
return(c);
}
を定義してから、
/*a[]は多項式の係数、nは多項式の次数、bは代入する複素数*/
comp c_poly_eval(double a[], int n, comp b){
int i;
comp tmp={0.0,0.0};
for(i=n; i>=0; i--){
tmp = c_add(tmp, a[i]*c_pow(b,i));
}
return(tmp);
}
を作ったのですがエラーが出てしまいます。
a[i]*c_pow(b,i)でn次の値を計算して、c_addにいれることで0次~n次までの和を求めようとしたのですが、何が違うのでしょうか?
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)));
のようにしましょう。
なるほど!
構造体のメンバがdoubleなので、
メンバを各々かけてくれるものだと思ってました(汗
無事、プログラムできました。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語でユーザ関数を利用して複素数のべき乗と絶対値の数列を計算するプログラムが作りたいです。 3 2023/01/29 22:13
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# C言語初心者 構造体 課題について 1 2023/03/10 19:30
- C言語・C++・C# C言語の課題が出たのですが自力でやっても分かりませんでした。 要素数がnであるint型の配列v2の並 3 2022/11/19 17:41
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
- C言語・C++・C# C 言語の Gauss Jordan 法について 2 2022/12/28 11:16
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# C言語 プログラミング 4 2022/05/22 11:53
- 大学・短大 C言語線形リストの問題です 3 2022/12/22 00:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
float型とdouble型の変数の違い...
-
プログラムでの数字につく”f”の...
-
doubleの変数にintとintの割り...
-
C言語を実行すると-infが出てき...
-
上三角行列の解を出力するプロ...
-
関数におけるif文とreturn文に...
-
至急です! マクロ定義で #defi...
-
C++で外積
-
C言語 関数プロトタイプ宣言の...
-
c言語で、繰り返し文の中で、0....
-
C言語で台形公式を使った二重積...
-
MATLAB:多数の画像を取り込み...
-
C 開放してるのにエラー(doubl...
-
C言語(プログラミング)関連の質...
-
マチンの公式による円周率のプ...
-
C言語の型による処理速度の違い
-
doubleは常に%lfとするべきなのか
-
斜辺と角度て底辺と高さを出したい
-
-1.#IND00と出てしまうのですが...
-
浮動小数点の定数
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラムでの数字につく”f”の...
-
float型とdouble型の変数の違い...
-
doubleの変数にintとintの割り...
-
C言語を実行すると-infが出てき...
-
C 開放してるのにエラー(doubl...
-
至急です! マクロ定義で #defi...
-
c言語で、繰り返し文の中で、0....
-
関数におけるif文とreturn文に...
-
C言語 関数プロトタイプ宣言の...
-
C言語初心者 構造体 課題について
-
C言語の型による処理速度の違い
-
Cで3乗根を求める方法
-
C言語で-23乗を取り扱うには
-
2分法で方程式の複数の解を自...
-
doubleは常に%lfとするべきなのか
-
c言語のコンパイルエラー canno...
-
C言語で直角三角形の斜辺を求め...
-
C言語のプログラムで#include<m...
-
int とdoubleの比較
-
C++で外積
おすすめ情報