// ------------------------------------------------------------------- // 以下、i 番目の微小区間の面積を求め、積分値に加算 (どれか 1 つ選択) // ------------------------------------------------------------------- // 矩形法 (長方形で近似した微小領域の面積を足す) // value += f(x) * delta; // 台形法 (台形で近似した微小領域の面積を足す) // value += ( f(x) + f(x+delta) ) * delta / 2.0; // シンプソン法 (二次関数で近似した微小領域の面積を足す) value += ( f(x) + f(x+delta) + 4.0 * f(x+delta/2.0) ) * delta / 6.0;