みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

C言語のプログラム教えて!!

二つの積分値の数値解を台形則とシンプソン則により求めるプログラムを作りたいのですがよくわかりません。また、プログラムは曲線上の点数を入力データで与えられるように作り、点数を変えたときの積分値の変化を示すようにしなければいけない。プログラム、入力データ、計算結果が分かるように回答して頂ければありがたいです。

投稿日時 - 2009-09-29 23:58:52

QNo.5329749

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

#include <stdio.h>
#include <math.h>

#define N 100
#define A 0.0
#define B 1.0

double f(double x) {
return sin(M_PI * x);
}

int main(void) {
double s;
double x;
int i;

s = (f(A) + f(B)) / 2.0;
for (i = 1; i < N; i++) {
x = A + (B - A) * (double)i / N;
s += f(x);
}
s = s * (B - A) / N;

printf("%f\n", s);

return 0;
}

1つめの式のみ、台形公式のみ、データ入力なし、敢えてコード中のコメントもなし。あまりテストもしていませんから、100%正しいと信じないように。

何かの演習課題のような感じがするので、いくら初心者と言っても、普通なら解くのに必要なことは学習済みだと思うのですが。

投稿日時 - 2009-10-07 21:57:29

ANo.1

分からないことは何ですか? 逆に、知っていることは何ですか?
・与えられた問題の積分式の表す意味
 (2つめの式にはdxがありませんが正しいですか?)
・台形公式やシンプソンの公式
・Cプログラムでの入力データの与え方
・Cプログラムでループする方法
・Cプログラムで小数を扱う方法
・Cプログラムでsinを使う方法
・その他

投稿日時 - 2009-10-01 22:45:40

補足

すみません。2つ目の式のdx忘れてました。
2つの積分式の台形公式とシンプソン公式を用いた場合のプログラムがわかりません。最終的には入力データを与え結果を比較したい。何しろC言語のプログラム自体初心者なもので、あまり理解できていないので、プログラム全体を回答いただければありがたいです。

投稿日時 - 2009-10-06 18:21:21

あなたにオススメの質問