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”の...
-
C 開放してるのにエラー(doubl...
-
C言語を実行すると-infが出てき...
-
たくさんの数の平均を求める方...
-
doubleの変数にintとintの割り...
-
2次方程式の解を求めるプログ...
-
C言語
-
三角形OABの面積を求めるプ...
-
C言語 関数プロトタイプ宣言の...
-
c言語のプログラミングについて...
-
c言語で、繰り返し文の中で、0....
-
関数におけるif文とreturn文に...
-
C言語の型による処理速度の違い
-
c言語のコンパイルエラー canno...
-
C言語で直角三角形の斜辺を求め...
-
C++で外積
-
double型とint型で三分の一乗の...
-
EXE1→DLL→EXE2数値を受け渡す方法
-
C言語初心者 構造体 課題について
マンスリーランキングこのカテゴリの人気マンスリー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++で外積
おすすめ情報