>>573
やり直し。台形公式。
#include <math.h>
#include <stdio.h>
#define n 20
double f(double x) {return sin(2 * x) * cos(x);}
double trapezoidal(double a, double b, int d) {
    double s = 0., h = (b - a) / d; int i;
    for (i = 1; i < d; ++i) s += f(a + i * h);
    s *= 2; s += f(a) + f(b); s *= h / 2;
    return s;
}
int main(void) {
    printf("積分範囲:%f...%f, 刻み数:%d, 積分結果:%f\n", 0., M_PI / 4, n, trapezoidal(0, M_PI / 4, n));
    return 0;
}