我已经为此工作了一段时间,但是我不知道如何解决这个问题:
我有一个包含50个随机数的列表,当此后的10个后续数字(例如,数字11-20或数字24-33)达到x的平均值时,我想收到通知。
这50个数字位于(HTML)表的1行中,每个数字都在不同的列中。
有人知道如何开始吗?谢谢!
如果数组中有数字,则可以以10为块循环遍历该数组,然后找到最大平均值。
<?php
$numbers = array(1, 2, 3, 4, 5, 4, 3, 2, 1, 2, 3, 4, 5, 4, 3, 2, 1,
10, 11, 12, 13, 14, 15, 14, 13, 12, 11, 10, 11, 12, //large numbers here
1, 2, 3, 4, 5, 4, 3, 2, 1, 2, 3, 4, 5, 4, 3, 2, 1);
$number = 10; //numbers in a set
$max = 0;
$index = 0;
$size = sizeof($numbers) - $number;
for ($i = 0; $i < $size; $i++) {
$tmp = array_sum(array_slice($numbers, $i, $number)) / $number;
if ($tmp > $max) {
$max = $tmp;
$index = $i;
}
}
echo "Largest set of " . $number . " numbers is: " . implode(', ', array_slice($numbers, $index, $number)) . "\nAverage of: " . $max;
输出:
Largest set of 10 numbers is: 10, 11, 12, 13, 14, 15, 14, 13, 12, 11
Average of: 12.5
然后,您可以将最大平均值与阈值进行比较,并进行自我通知。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句