前提・実現したいこと
f(x)=√xを区間[0,1]で積分することをしたい。
![
Iを上記のようにした。
積分区間を1 区間とする台形公式に基づく関数trap1(a,b) を作
成し,I の値を求めたい。
積分を行いたいのですが以下のようなエラーが発生し進むことができません。
発生している問題・エラーメッセージ
Main.cpp:5:14: error: unknown type name 'a' double trap1(a,b){ ^ Main.cpp:5:16: error: unknown type name 'b' double trap1(a,b){ ^ 2 errors generated.
該当のソースコード
c++
1#include<stdio.h> 2#include<math.h> 3#define f(x) (pow(x,0.5)) 4 5double trap1(a,b){ 6double h,ans,a,b; 7 h = b-a; 8 ans = h/2.0*(f(b)+f(a)); 9 return ans; 10} 11 12int main(void) { 13 double ans = trap1(0,1); 14 printf("%.20f",ans); 15 return 0; 16} 17
試したこと
doubleにa,bを追加ないと以下のようなエラーが出た
Main.cpp:5:14: error: unknown type name 'a' double trap1(a,b){ ^ Main.cpp:5:16: error: unknown type name 'b' double trap1(a,b){ ^ Main.cpp:7:9: error: use of undeclared identifier 'b' h = b-a; ^ Main.cpp:7:11: error: use of undeclared identifier 'a' h = b-a; ^ Main.cpp:8:20: error: use of undeclared identifier 'b' ans = h/2.0*(f(b)+f(a)); ^ Main.cpp:8:25: error: use of undeclared identifier 'a' ans = h/2.0*(f(b)+f(a)); ^ 6 errors generated
補足情報(FW/ツールのバージョンなど)
c++を行う環境がなく、paiza.ioで行っています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/04 15:56
2021/01/04 16:01
2021/01/04 16:06