注册 登录
编程论坛 汇编论坛

求自然数平方和的算法讨论

myxiange 发布于 2007-04-17 21:39, 3090 次点击
要求1~100的自然数平方和,各位有何妙一点的算法啊?
15 回复
#2
福尔摩斯2007-04-17 21:45
这个是数学公式:

1^2+2^2+……+n^2 = (1/6)n(n+1)(2n+1)

证明过程要用 错位相减法(数学)
#3
I喜欢c2007-04-17 22:25

从1~100
每位左移一位在相加...

#4
myxiange2007-04-17 22:45
左移不就是*2吗,为什么?
#5
菜鸟上路2007-04-18 17:27
3楼说错了,不是左移1位相加,是直接相乘
#6
I喜欢c2007-04-19 00:05

平方和呀~``怎么不对?

#7
liuminghui2007-04-19 09:35
写一个循环就可以了啊!


long sum=0;
for(int i=1;i<=100;i++)
{
sum = sum + i*i;
}

可以吧?
#8
I喜欢c2007-04-19 12:07
以下是引用liuminghui在2007-4-19 9:35:53的发言:
写一个循环就可以了啊!


long sum=0;
for(int i=1;i<=100;i++)
{
sum = sum + i*i;
}

可以吧?

#9
菜鸟上路2007-04-19 12:08
以下是引用I喜欢c在2007-4-19 0:05:10的发言:

平方和呀~``怎么不对?

00000001左移1位是00000010,一个是1,一个是2!

#10
福尔摩斯2007-04-19 12:09
以下是引用liuminghui在2007-4-19 9:35:53的发言:
写一个循环就可以了啊!


long sum=0;
for(int i=1;i<=100;i++)
{
sum = sum + i*i;
}

可以吧?



这里不是C语言区

#11
福尔摩斯2007-04-19 12:09
直接用我的给公式做就可以了
#12
liuminghui2007-04-19 12:49
以下是引用福尔摩斯在2007-4-19 12:09:00的发言:



这里不是C语言区

#13
I喜欢c2007-04-19 22:36
以下是引用菜鸟上路在2007-4-19 12:08:00的发言:

00000001左移1位是00000010,一个是1,一个是2!



惭愧! 把乘以2想成平方了

哎~```一时短路....

#14
菜鸟上路2007-04-20 12:32
回复:(I喜欢c)以下是引用菜鸟上路在2007-4-19 12:...
#15
jinchaoren2007-04-21 12:25
以下是引用liuminghui在2007-4-19 9:35:53的发言:
写一个循环就可以了啊!


long sum=0;
for(int i=1;i<=100;i++)
{
sum = sum + i*i;
}

可以吧?

呵呵,C 都用上了.

#16
jinchaoren2007-04-21 12:26
用汇编的循环也可以啊!!!
1