1、积分计算原理
众所周知,定积分在集合图形中的意义就是函数f(x)在某区间内的面积,由推导原理可得公式

2、通过原理用代码实现积分过程
此方法的作用是函数f(x)以a,b为区间的封闭图形中等分的量级大小
// 微分间隔
public static double sub(double a, double b, double n) {
return (b - a) / n;
}
此方法的作用就是在函数f(x)以a,b为区间的封闭图形中做n次等分累加运算这部分a、b分别代表积分区间上下限,n代表函数f(x)以a,b为区间的封闭图形中等分数量,也就是说等分数量越大,算出的值就越精确,i代表第几次等分累加运算。
// 微分求积
public static double differential(double a, double b, double n, int i) {
return a + i * (b - a) / n;
}
此方法为定义被积分的函数,也就是在几何意义中曲边梯形的那条曲边函数f(x),示例函数为一条开口向上顶点为(0,0)的抛物线
// 被积函数
public static double f(double x) {
return x * x;
}
以上三个方法都是计算积分的重要元素,现在我们把他们连起来操作一波,首先定义被积函数的上下限,这里示例对函数f(x)下的曲边梯形垂直做100000等分,通过循环累加每个小的梯形面积最终得出函数f(x)在top botm区间的近似面积和(这里只能取近似,不能像数学概念中取极限。目前不知道无穷大该怎么定义[逃])
//计算积分
private static double integral(int top, int botm) {
double sub = sub(top, botm, 100000);
double sum = 0;
for (int j = 1; j <= 100000; j++) {
double x = differential(sub, botm, 100000, j);
sum = sum + f(x);
}
return sum * sub;
}
public static void main(String[] args) {
System.out.println("x 0-5 的定积分为:" + integral(0, 5));
}

最后通过牛莱公式手动验证,结果和通过我们的方法运行得出的近似值基本保持一致。
TODO
如何实现通过提供的函数进行积分运算
以直线方程y=kx+b为例
public static void lineEquation(int x1, int y1, int x2, int y2) {
int k, b;
k = k(x1, y1, x2, y2);
b = b(x1, y1, k);
System.out.println("y=" + k + "x+" + b);
}
//直线斜率公式
private static int k(int x1, int y1, int x2, int y2) {
return (y2 - y1) / (x2 - x1);
}
//直线截距公式
private static int b(int x, int y, int k) {
return y - k * x;
}