ページ 11

コンパイルのエラー c言語について

Posted: 2010年6月27日(日) 14:56
by 森のプーさん
#include <stdio.h>
#include <math.h>

/* 関数の定義 */
double func1(double x);
/* 台形公式 */
double trapezoidal( double a, double b, int n, double (*f)(double) );

int main(void)
{
int n=100;

printf(" sqrt 5 * ( 1.0 / ( 4 + sin(x) * sin(x) ) ) ) を [0,π/2]で積分します。分割数は%dです。 ", n);
printf("結果は%20.15fです。", trapezoidal(0.0, M_PI_2, n, func1) );

return 0;
}

/* 台形式 */
double trapezoidal( double a, double b, int n, double (*f)(double) )
{
double T, h;
int i;

h =( b - a ) /n ; /* 刻み幅の指定 */

/* 台形公式 */
T = ( (*f)(a) + (*f)(b) ) / 2.0;
for ( i = 1; i< n; i++) T += (*f)( a + i*h );
T *= h;

return T;
}

/* 関数の定義 */
double func1(double x)
{
return( sqrt 5 * (1.0 / ( 4 + sin(x) * sin(x) ) ) );
}

コマンドプロントを実行すると

エラー E2293 kadai2kai2.c 38: ) が必要(関数 func1 )
警告 W8057 kadai2kai2.c 39: パラメータ 'x' は一度も使用されない(関数 func1 )
*** 1 errors in Compile ***

と出ます。

sqrt 5を(1.0 / ( 4 + sin(x) * sin(x) ) )に掛ける場合はどこを直せばよいか教えてもらいたいです。

画像

Re:コンパイルのエラー c言語について

Posted: 2010年6月27日(日) 15:08
by fatens
sqrt 5 → sqrt(5) です。

Re:コンパイルのエラー c言語について

Posted: 2010年6月27日(日) 15:11
by 森のプーさん
出来ました。ありがとうございます。

Re:コンパイルのエラー c言語について

Posted: 2010年6月28日(月) 08:24
by 組木紙織
規約違反に気付いたので一応指摘。
以下のとことマルチポストになってます。

>http://bbs.wankuma.com/index.cgi?mode=al2&namber=51187