2012-03-20 59 views
2

这是一个简单的问题,我想,但我无法弄清楚。PHP中的连续数字的总和

如何获得PHP中的连续数字的总数如2,4,6,8,10。 。 。 .1000

谢谢你的帮助。在,

+1

2,4,6,8,9,10 ......这里的模式在哪里? – Ryan 2012-03-20 21:11:55

+0

没有大于2的素数,duh。 ;) – 2012-03-20 21:14:42

+0

@GigaWatt我做了更正,对不起。 – mika 2012-03-20 21:18:27

回答

4

$sum = array_sum(explode(',', '2,4,6,8'));

编辑:如果你只是想的范围内,甚至数的总和,你可以

$sum = array_sum(range(2,1000,2));

+0

谢谢。这正是我想要的:) – mika 2012-03-20 21:22:57

4

拆分,然后sum

$numbers = explode(",", $string); 
$total = array_sum($numbers); 
echo $total; 

注意,这仅需要numbers,任何其他字符将受到被类型强制转换为一个整数(这可能会导致意想不到的结果)。

3

如果你想你也可以使用Arithmetic progression sum,只是做

$total = ($firstNumber + $lastNumber) * $count/2 

只要数字可以表达为

一个Ñ =一个 +(N - 1)d

你的序列可以被描述为

一个Ñ = 2 +(N - 1)2

所以我们可以应用算术级数和得到

(2 + 1000)* 500/2 = 250,500

这将比任何计算它的方法快得多。