Добавьте все четные числа от 18 до 27, используя функцию PHP - PullRequest
0 голосов
/ 18 сентября 2018

Мне нужно заняться спортом.Нужно создать функцию с именем printRange(), которая должна принимать 2 числа в качестве аргументов, запускать и останавливать.Функция должна добавить все четные числа между началом и концом (не включая) в массив и вернуть его.Ответьте с помощью вызова функции, используя аргументы: 18 и 27. Напишите свой код ниже и поместите ответ в переменную ANSWER.

Необходимость использования функции. Coz упражнение о «изучении функции в PHP».

Проверьте код ниже, я пришел так долго.

Я думал, что если я использую $x .= $number;, то PHP установит четное число $ в $x=[];, но это не работает для меня.Ответ должен быть [20,22,24,26] (массив)

$x = [];
function printRange($a, $b) {
    foreach (range($a, $b) as $number) {
        if (0 === $number % 2) {
            $x .= $number;
        }
    }

}


$ANSWER = printRange(18, 27);

Я пытался удалить $x .= $number; и написать число $ echo: чтобы проверить, что я получаю,Вот что я получаю 1820222426

$x = [];
function printRange($a, $b) {
    foreach (range($a, $b) as $number) {
        if (0 === $number % 2) {
            echo $number;
        }
    }

}




$ANSWER = printRange(18, 27);

Ответы [ 3 ]

0 голосов
/ 18 сентября 2018

Почему бы вам не использовать шаг в range()?

print_r(range(18, 27, 2));
//Array ( [0] => 18 [1] => 20 [2] => 22 [3] => 24 [4] => 26 ) 
0 голосов
/ 18 сентября 2018
In $x .= $number;  .= is used to concatenate string. if you want to store this in array then modify your code like 
$x = [];
function printRange($a, $b) {
foreach (range($a, $b) as $number) {
    if (0 === $number % 2) {
        $x[] = $number; // $x[] will store your value in array
    }
}
echo implode(', ',$x); // if you want to store your result comma separated then use implode otherwise just print $x array.
}
$ANSWER = printRange(18, 27);
0 голосов
/ 18 сентября 2018

Вместо

$x .= $number;

Вы, вероятно, должны сделать:

array_push($x, $number);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...