写一个用矩形法求定积分的通用公式,分别求 sinx在0-1上积分,cosx在0-1上积分,e^x在0-1上积分
#include <stdio.h>#include <stdlib.h>#include <math.h>double a[1001];void split(){for (int i = 0; i < 1001; i++){a[i] = (1.0 / 1000)*i;}}void cal_cos(){double ret = 0.0;for (int i = 0; i < 1000; i++){double avg = (a[i] + a[i + 1]) / 2.0;ret += (cos(avg)*(1.0 / 1000));}printf("%lf\n", ret);}void cal_e(){double ret = 0.0;for (int i = 0; i < 1000; i++){double avg = (a[i] + a[i + 1]) / 2.0;ret += (exp(avg)*(1.0 / 1000));}printf("%lf\n", ret);}void cal_sin(){double ret = 0.0;for (int i = 0; i < 1000; i++){double avg = (a[i] + a[i + 1]) / 2.0;ret += (sin(avg)*(1.0/1000));}printf("%lf\n", ret);}int main(){split();cal_sin();cal_cos();cal_e();system("pause");return 0;}
答案
写一个用矩形法求定积分的通用公式,分别求 sinx在0-1上积分,cosx在0-1上积分,e^x在0-1上积分