var N;
var X = new Array();
var Y = new Array();
var F = new Array();
X[0] = 815;
X[1] = 1207;
X[2] = 1614;
X[3] = 2012;
X[4] = 2603;
X[5] = 3006;
X[6] = 3403;
X[7] = 3804;
Y[0] = 1326.8;
Y[1] = 1354.7;
Y[2] = 1284.4;
Y[3] = 1122.9;
Y[4] = 1141.0;
Y[5] = 1051.2;
Y[6] = 1233.9;
Y[7] = 1129.7;
N = 8;
var Q = new Array();
computeFuelConsumption();
alert(Q);
function computeFuelConsumption(){
//输入要插值节点的个数:
//n = document.getElementById("n").value;
data();
newton();
alert("============");
for(i = 0;i < rang - 1;i++){
newvalue(outputArray[i],i);
}
alert("//////////////////////");
}
function data(){
// int i = 0;
// if(document.getElementById("xArray1").value != 0){
// x[0] = document.getElementById("xArray1").value;
// i++;
// }
// if(document.getElementById("xArray2").value != 0){
// x[1] = document.getElementById("xArray2").value;
// i++;
// }
// if(document.getElementById("xArray3").value != 0){
// x[2] = document.getElementById("xArray3").value;
// i++;
// }
// if(document.getElementById("xArray4").value != 0){
// x[3] = document.getElementById("xArray4").value;
// i++;
// }
// if(document.getElementById("xArray5").value != 0){
// x[4] = document.getElementById("xArray5").value;
// i++;
// }
//
// if(document.getElementById("yArray1").value != 0){
// y[0] = document.getElementById("yArray1").value;
// }
// if(document.getElementById("yArray2").value != 0){
// y[1] = document.getElementById("yArray2").value;
// }
// if(document.getElementById("yArray3").value != 0){
// y[2] = document.getElementById("yArray3").value;
// }
// if(document.getElementById("yArray4").value != 0){
// y[3] = document.getElementById("yArray4").value;
// }
// if(document.getElementById("yArray5").value != 0){
// y[4] = document.getElementById("yArray5").value;
// }
// N = i;
}
function newton(){
var k = 0;
var nn;
nn = N - 1;
for (i = 0; i < nn; i++){
for (j = 0; j < nn - i; j++) {
if (i == 0)
F[k++] = (Y[j + 1] - Y[j]) / (X[j + 1] - X[j]);
else {
F[k] = (F[k + i - nn ] - F[k + i - nn - 1]) / (X[j + i + 1] - X[j]);
k++;
}
}
}
}
function newvalue(p,o){
var B = new Array();
var P;
P = p;
B[0] = 1.0;
for (i = 0; i < N - 1; i++)
B[i + 1] = B[i] * (P - X[i]);
for (i = 0; i < N; i++) {
if (i == 0)
a = Y[0];
else {
P += B[i] * F[k];
k += N - i;
}
}
Q[o] = P;
}