※ ChatGPTを利用し、要約された質問です(原文:矩形法プログラムの計算値と計算誤差の求め方)
矩形法プログラムの計算値と計算誤差の求め方
下記の矩形法の計算値を求めるプログラムで、区間分割数nを10から100まで10ずつ増やして計算値を求めるプログラムを作成したいのですが、どのようにしたらいいのか分かりません。Java初心者なのでJavaプログラムが詳しい人は至急ご連絡をお願いします。
*ちなみにこの矩形法プログラムのの計算誤差も分かる人はお願いしたいのですが・・・・・・
計算誤差の求め方は
計算誤差=(計算値ー真値)/真値×100(%) (真値=0.68269とする)
public class Kukei
{
static double f(double x)
{
// ここに任意の被積分関数を記述
double y = Math.exp(- x * x / 2) / Math.sqrt(2.0 * Math.PI);
return y;
}
public static void main(String[] args)
{
double a = - 1.0, b = 1.0; // 積分範囲
int n = 100; // 区間分割数
double h = (b - a) / (double)n; // 分割幅
double s = 0.0;
for (int i=0; i < n; i++)
{
s += f(a + i * h);
}
s *= h;
System.out.println("区間分割数 =" + n);
System.out.println("矩形法による計算値 =" + s);
}
}
お礼
ありがとうございました。おかげでうまく動きました。