PHP中的连续数字的总和
答
$sum = array_sum(explode(',', '2,4,6,8'));
编辑:如果你只是想的范围内,甚至数的总和,你可以
$sum = array_sum(range(2,1000,2));
+0
谢谢。这正是我想要的:) – mika 2012-03-20 21:22:57
答
拆分,然后sum:
$numbers = explode(",", $string);
$total = array_sum($numbers);
echo $total;
注意,这仅需要numbers
和,
任何其他字符将受到被类型强制转换为一个整数(这可能会导致意想不到的结果)。
答
如果你想你也可以使用Arithmetic progression sum,只是做
$total = ($firstNumber + $lastNumber) * $count/2
只要数字可以表达为
一个Ñ =一个 +(N - 1)d
你的序列可以被描述为
一个Ñ = 2 +(N - 1)2
所以我们可以应用算术级数和得到
(2 + 1000)* 500/2 = 250,500
这将比任何计算它的方法快得多。
2,4,6,8,9,10 ......这里的模式在哪里? – Ryan 2012-03-20 21:11:55
没有大于2的素数,duh。 ;) – 2012-03-20 21:14:42
@GigaWatt我做了更正,对不起。 – mika 2012-03-20 21:18:27