在下列条件下编写程序以查找所有数字的平方和?

Jas*_*ora 15 java

给定两个数字n1和n2使得n2> n1,找到从n1到n2(包括n1和n2)的所有数字的平方和.

我的方法:

我尝试使用for循环迭代来解决问题n1,n2但我得到了错误的答案

下面是我的代码函数:

public int computeSumofSquares (int n1, int n2) 
{
    int sum=0;
    if(n2>n1)
    {
        for(int i=n1;i<=n2;i++)
        {
            sum=((sum)+(n1*n1));
        }
    }
    return sum;
    //write your code here

}
Run Code Online (Sandbox Code Playgroud)

对于输入

Parameters  Actual Output   Expected Output
'8' '10'    192             245
Run Code Online (Sandbox Code Playgroud)

kai*_*kai 16

你正在n1对每次迭代进行平方.相反,你应该平方i.作为简短形式sum=((sum)+(i*i));你可以写sum += i * i;

  • 它比`sum =((sum)+(i*i))`更可读,并且不需要那些括号 (2认同)

Men*_*ena 8

更改sum=((sum)+(n1*n1));sum=((sum)+(i*i));i是价值递增.


Ahm*_*iri 5

在你的循环中每次都会sum=((sum)+(n1*n1));改变,但在你的陈述中没有任何变化,你的例子中每次你总计8 ^ 2,结果将是8*8 + 8*8 + 8*8 = 192.

正如大家所说,如果你在那个陈述中将n1改为isum=sum+i*i,那么你就会得到你想要的结果.