변경이력

돌아가기
3 7개 문자 추가 9개 문자 삭제

2017/01/02 04:43

주 현태

<p>매트랩으로 시도해보았습니다. 초보라서 간결하게는 안되는군요;; \n 정리하면 k = (n-1)/(1과 자기자신을 제외한 약수의 합)으로 표현되므로 \n i, k를 구하고 이때 k가 자연수인 경우만 출력하도록 하였습니다. \n</p> ```{.matlab} N = input('Input number :'); for i = 2 : N % (1, 0)을 피하기 위해 2부터 시작 tmp = 0; for j = 1 : i if mod(i,j) == 0 tmp = tmp + j; % 약수의 합 end end k = (i-1)/(tmp-1-i); % 약수의 합에서 1과 자기자신 제외 if mod(k,1) == 0 fprintf('(%d, %d) ', i, k) end end ```
<p>매트랩으로 시도해보았습니다. 초보라서 간결하게는 안되는군요;; \n 정리하면 k = (n-1)/(1과 자기자신을 제외한 약수의 합)으로 표현되므로 \n i, k를 구하고 이때 k가 자연수인 경우만 출력하도록 하였습니다. \n</p> ```{.matlab} N = input('Input number :'); for i = 2 : N % (1, 0)을 피하기 위해 2부터 시작 tmp = 0; for j = 1 : i if mod(i,j) == 0 tmp = tmp + j; % 약수의 합 end end k = (i-1)/(tmp-1-i); % 약수의 합에서 1과 자기자신 제외 if mod(k,1) == 0 fprintf('(%d, %d) ', i, k) end end ```
2 9개 문자 추가

2017/01/02 04:39

주 현태

1 Original

2017/01/02 04:38

주 현태

코딩도장

코딩도장은 프로그래밍 문제풀이를 통해서 코딩 실력을 수련(Practice)하는 곳입니다.