Matlab 編程 Project Euler Problem 21 Amicable numbers

%Amicable_numbers_20.m
%求一對親和數:任一個數的所有因數的和等於另一個數

function sum_prime=func_factor(x)
sum_prime=0;
for i=1:round(x/2)
    if(rem(x,i)==0)
        sum_prime=sum_prime+i;
    end
end


clear all;
close all;
Factor=zeros(2,100);  %構造 2 X 100 的數組
k=1;
for i=1:10000
    num_1=func_factor(i);  %計算 i 的所有因數的和
    if(i==func_factor(num_1))  %若相等,則找到
        Factor(1,k)=i;
        Factor(2,k)=num_1;
        k=k+1;
    end
end
%disp(Factor)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章