Главные делители в рекурсии - PullRequest
0 голосов
/ 04 июля 2018

Мне нужно вывести все простые делители заданного числа n.

Я попытался написать некоторый код и обнаружил, что условие остановки - если n простое или что мы получили 2. 2. 1003 *

Что мне трудно, так это найти способ отправить элемент в функцию, не «теряя» заданное число n, было бы легко, если бы мне потребовалась простая факторизация, в этом случае я бы отправил в функцию n, деленное на основанный простой делитель, чтобы получить входное значение меньше

Редактировать: я понял, что это эквивалентно нахождению простой факторизации

мой код:

function y=PrimeR(n)
if isprime(n)==1
    y=n

else
for i=floor(sqrt(n)):-1:2
       if mod(n,i)==0
           y=[i,PrimeR(n./i)]
       end
end
end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...