PHP添加数字1-10,偶数数字1-10。用一个循环分别显示总和

时间:2018-04-30 02:40:39

标签: php

我正在尝试使用一个PHP for循环来回显数字1-10的总和以及仅回显偶数的总和。我似乎有一个问题,因为这些迭代不会“平行”

代码:

<?php
    $sum = 0; $evensum = 0;
    for($x = 1, $y=2; $x<=10, $y<=6; $x++, $y += 2) {
    $sum = $sum + $x; $evensum = $evensum + $y;
        }
    echo "total sum= ". $sum, ", even sum=" . $evensum;  
?>

总和应该反映 55 (1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10)和偶数总和< / strong>应该反映 30 (2 + 4 + 6 + 8 + 10)

3 个答案:

答案 0 :(得分:4)

只需使用

<?php
    $sum = 0; $evensum = 0;
    for($x = 1; $x<=10; $x++) {
        // sum all the number
        $sum = $sum + $x;
        // check the number is even 
        if( $x % 2 === 0 ) { 
           // sum only the even numbers
           $evensum = $evensum + $x;
        }
    }
    // output
    echo "total sum= ". $sum, ", even sum=" . $evensum;  
?>

答案 1 :(得分:1)

另一种方法是使用range()array_functions

$arr=range(1,10);
echo $sum=array_sum($arr);

function even($var)
{

    return(!($var & 1));
}

echo $even=array_sum(array_filter($arr, "even"));

答案 2 :(得分:0)

汇总所有范围

$all_sum=array_sum(range(1,10)); 

求偶数(0,2,4,6,8,10)

$even_sum = array_sum(range(0,10,2));