Как объединить 2 функции
Есть задача. Реализовать функцию findSimple ($a, $b). $a и $b – целые положительные числа. Результат ее выполнение: массив простых чисел от $a до $b. Я решил ее вот таким методом.
function is_prime($num)
{
if ($num == 1)
return false;
for ($i = 2; $i <= $num/2; $i++)
{
if ($num % $i == 0)
{
return false;
}
}
return true;
}
function findSimple ($a, $b)
{
$arr = [];
for($i=$a; $i<=$b; $i++) {
if(is_prime($i)){
$arr[] = $i;
}
}
return $arr;
}
$r = findSimple (3, 7);
print_r($r);
Сам вопрос, как объединить эти 2 функции в одну не очень понимаю механизм.
Ответы (1 шт):
Автор решения: Эдуард
→ Ссылка
Если по каким-то причинам запрещено использовать range(), то можно просто проверять аргументы, и по условию собирать массив чисел
<?php
function findSimple(int $a, int $b): array
{
$arr = [];
if ($a > 0 && $b > 0) {
for($i=$a; $i<=$b; $i++) {
$arr[] = $i;
}
}
return $arr;
}
$r = findSimple (3, 7);
print_r($r);