В данном уроке я покажу вам, как решать более сложные задачи, используя комбинации вспомогательных функций. Рассмотрим на примере задачи.
Пусть у нас дано число. Давайте получим все собственные делители этого числа, являющиеся простыми числами.
Пусть наше решение задачи будет представлять собой реализацию вот этой функции:
<?php
function getPrimeDivisors($num) {
}
?>
Писать весь код решения в нашей функции - это не очень удачная идея. Так как наша задача достаточно сложная, то ее можно разбить на подзадачи, сделав для решения каждой подзадачи отдельную вспомогательную функцию.
Немного подумав, становится понятно, что
было бы неплохо иметь функцию getOwnDivisors
для нахождения делителей числа и функцию
isPrime
для проверки числа на простоту.
Если бы у нас были такие функции, то мы бы
решили нашу задачу следующим образом:
<?php
function getPrimeDivisors($num) {
$result = [];
$divs = getOwnDivisors($num);
foreach ($divs as $div) {
if (isPrime($div)) {
$result[] = $div;
}
}
return $result;
}
?>
Напишете реализацию вспомогательных функций и решите поставленную задачу.