// Write a program to calculate the innerproduct of two arrays (ip of v,w = sum, for all i, of vi*wi)
var v = [1, 2, 3, 'x'];
var w = [1, 2, 3, 4];
vSum_total = 0;
wSum_total = 0;
// calculate sum of v
for(i=0; i<v.length; i++)
{
if (isNaN(v[i]))
v[i] = 0
else
vSum_total += Number(v[i]);
}
// calculate sum of w
for(i=0; i<v.length; i++)
{
if (isNaN(v[i]))
v[i] = 0
else
wSum_total += Number(w[i]);
}
alert ("Total of v: " + (vSum_total));
alert ("Total of w: " + (wSum_total));
alert ("Inner product: " + (vSum_total * wSum_total));
我正在尝试计算数组的内积,但我的结果并没有提醒。任何正确方向的提示都会非常感激!
答案 0 :(得分:3)
由于vsum从0开始,当你将它乘以任何数字时它都保持为0。
答案 1 :(得分:2)
var vSum = 1;
var v = [];
v[0] = parseInt(prompt("v0:"));
v[1] = parseInt(prompt("v1:"));
v[2] = parseInt(prompt("v2:"));
v[3] = parseInt(prompt("v3:"));
// calculate ip of v
for(i = 0; i < v.length; i++)
{
vSum *= v[i];
}
alert(vSum);
答案 2 :(得分:1)
vSum
应为v
(反之亦然)。
您正在尝试使用类似数组的整数,因此您的脚本正在中止。
打开调试器。