将数组中的每个单个值除以下一个值以返回数字

时间:2018-10-13 16:45:43

标签: php loops math foreach

我如何使用php将数组中的每个单个值除以下一个值,以返回一个具有数组的数字

我想要一个除以1/2/3/4/5的函数,它应该返回该值(0.0083333333333333) 我已经尝试过

<?php
    function vo(){
     $newArray=array(1,2,3,4,5);
        $resulte=1;
            foreach($newArray as $value){
             $resulte=$value/$resulte;
        }}
vo();
?>

此代码的输出,结果为1.875

我认为我数学不好,不确定

2 个答案:

答案 0 :(得分:1)

您的部门倒退了。您想除以列表中的下一个数字,因此您的$resulte = $value / $resulte应该是$resulte = $resulte / $value。还记得在循环后添加一个print($resulte)

答案 1 :(得分:1)

$your_array = [1,2,3,4,5];
$result = $your_array[0]; //result defaulted to first element in array;

for($i=1; $i<sizeof($your_array); $i++){ //loop starts from 2nd                                           //element in array
  $result /= $your_array[$i];
}

代码说明:将$ result的初始值设置为数组的第一个元素,因为这是您要划分的第一件事;

从第二个元素开始遍历数组,并将$ result的值设置为其当前值除以循环中的当前元素(这就是使用/ =的原因)

$ result的最终值成为数组的每个元素除以它旁边的元素的累加结果。

如果输出$ result,您将获得0.0083333333333333