1. 程式人生 > >尤拉計劃問題三matlab實現

尤拉計劃問題三matlab實現

Problem3: Largest prime factor

The prime factors of 13195 are 3,7,13 and 29. 

What is the largest prime factor of  the number 600851475143?

思路:

採用迴圈來遍歷求最大質數因子。設定一個迴圈從2到比自身小1,逐次相除迭代(計算機最擅長的事就是做迴圈了),若除完之後的數只能被自身及一整除,那麼該數就是最大質數因子。

t = 600851475143;
for i = 2:t-1
    if mod(t,i) == 0        %i是t的質數因子
        t = t / i;          %%如果t只能被自身及一整除
        if t == 1           
            a = i;          %i就是t的最大質數因子
            break
        end
    end
end
a

儘量每天更新一題,希望大家多多交流學習!