我试图制作一个计算器,从方程0到2生成方程y = x - x ^ 2的左手黎曼和。问题是,我的所有解都持续得到0.0 。如果有人能告诉我我做错了什么,那将非常感激。
import java.lang.Math;
public class LeftHandSum {
public static void main(String[] args) {
int [] n = {2,10,100,1000,10000}; //number of steps in each summation
int a = 0;
int b = 2;
int H = 0;
double x = 0;
for (int j = 0; j < 4; j++)
{
double dX = (b-a)/n[j];
for (int i = 1; i < n[j]; i++)
{
x = a + (i-1)*dX;
H += (x - Math.pow(x,2));
}
double solution = H*dX;
System.out.println(solution);
}
}
}
答案 0 :(得分:0)
你在
中使用整数除法(b-a)/n[j];
只要 n [j] 大于(b-a),它将始终返回零。 你需要在分裂之前把它加倍。