Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 带阵列的点积_Java_For Loop_Dot Product - Fatal编程技术网

Java 带阵列的点积

Java 带阵列的点积,java,for-loop,dot-product,Java,For Loop,Dot Product,在课堂上,我们必须使用点积编写一个小代码来计算两个数组(数组a和数组b)的和。我已经写了我的代码,但是当我运行它时,它并没有给我答案。我的教授说我的循环是错误的,但我不认为是。表示in的部分不是循环控制变量,而是a.length,它是一个越界索引。你可能是说 sum += a[i] * b[i]; 而且,尽管这并不直接重要,但您可能是指您的循环 for (int i = 0; i < n; i++) for(int i=0;i

在课堂上,我们必须使用点积编写一个小代码来计算两个数组(数组a和数组b)的和。我已经写了我的代码,但是当我运行它时,它并没有给我答案。我的教授说我的循环是错误的,但我不认为是。表示
i
n
的部分不是循环控制变量,而是
a.length
,它是一个越界索引。你可能是说

sum += a[i] * b[i];
而且,尽管这并不直接重要,但您可能是指您的
循环

for (int i = 0; i < n; i++)
for(int i=0;i
(我想这就是你首先拥有
n
的原因。)

公共类数组示例
{
公共静态void main(字符串[]args)
{
int[]a={1,2,2,1};
int[]b={1,2,2,1};
int n=a.长度;
整数和=0;
对于(int i=0;i
i
在循环参数中确实有效。不确定你的指导老师在说什么。它输出了什么?它与您的预期输出有什么不同?什么是
n
?这甚至可以编译吗?@JustinL。它没有向我显示任何东西,但是我从下面的答案中意识到我应该是多个a[I]*b[I](不是a[n]*b[n])谢谢:)@borisspider程序确实编译过,n应该代表数组a的长度,但是我把它取出来了。我们不是都去过吗?@arshajii谢谢你的帮助。我将行更改为sum+=a[I]*b[I],它可以工作。:)@索菲亚利很高兴我能帮上忙。别忘了。
for (int i = 0; i < n; i++)
public class arrayExample 
{
  public static void main (String [] args) 
   {

     int[] a = {1,2,2,1};
     int[] b = {1,2,2,1};
     int n = a.length;

     int sum = 0;
     for (int i = 0; i < n; i++) 
     {
        sum += a[i] * b[i];    
     }

     System.out.println(sum);
   }
}