본문으로 건너뛰기
CalcMax

약수 계산기

범위: 1 – 1,000,000

계산 결과

1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 60

약수

약수 쌍
1 * 60, 2 * 30, 3 * 20, 4 * 15, 5 * 12, 6 * 10

어떤 정수의 약수란, 그 수를 나머지 없이 정확히 나누는 또 다른 정수입니다. 60의 약수는 1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 60으로 열두 개이고, 이들은 언제나 곱해서 60이 되는 짝을 이룹니다. 1과 60, 2와 30, 3과 20, 4와 15, 5와 12, 6과 10입니다. 이 약수 계산기는 두 가지 읽기를 모두 인쇄합니다. 납작한 약수 목록과 약수 쌍인데, 둘은 서로 다른 질문에 답하기 때문입니다. 어떤 수가 다른 수를 나누는지 확인할 때 필요한 것이 목록이고, 그 넓이를 갖는 직사각형이나 곱이 정해진 두 수를 찾을 때 필요한 것이 쌍입니다. 방법은 시행 나눗셈이고, 쓸모 있는 부분은 언제 멈출지를 아는 것입니다. 60의 약수를 모두 찾는 데 8을 넘겨 시험할 필요는 없습니다. 8 × 8 = 64이기 때문입니다. 제곱근을 넘어서면 찾게 되는 약수는 이미 만난 약수의 짝에서 큰 쪽일 뿐입니다. 그래서 60은 쉰아홉 번이 아니라 일곱 번의 시험으로 끝나고, 이 페이지의 상한이 100만인데도 일곱 자리 수가 여전히 빠릅니다. 같은 기준선이 약수 쌍을 정렬된 모양으로 만듭니다. 작은 약수를 찾을 때마다 그 짝이 같은 순간에 만들어지므로, 쌍은 정렬 단계 없이도 작은 쪽 기준으로 나열됩니다. 출력을 읽기 전에 알아 둘 특별한 경우가 둘 있습니다. 소수(素數)란 1보다 큰 자연수 중 1과 자기 자신만을 약수로 갖는 수이고, 그 약수 목록은 짧으며 쌍은 하나뿐입니다. 완전제곱수는 약수의 개수가 홀수인데, 가운데 짝이 같은 수 두 개이기 때문입니다. 36은 약수가 아홉 개이고 쌍이 6 * 6으로 끝나며, 페이지는 그것을 한 번만 인쇄합니다. 둘 다 오류도, 코드에서 특별 취급되는 경우도 아닙니다. 같은 루프에서 나온 결과입니다. 이 페이지가 하지 않는 일은 수를 소인수로 쪼개는 것입니다. 모든 약수와 모든 쌍을 알려 주고, 60에 약수가 열두 개 있다는 것을 기꺼이 보여 주지만 60 = 2² × 3 × 5라고는 끝내 말하지 않습니다. 약수 목록에 그 조각들이 들어 있기는 하지만 그것은 소인수분해가 아닙니다. 수가 클 때 이 구분이 중요해집니다. 이 페이지의 일은 입력의 제곱근만큼 늘어나는 반면 소인수분해는 정말로 어려운 문제이고, 둘은 서로 다른 질문입니다.

세 수의 약수와 약수 쌍을 나란히 놓은 표

수약수약수 쌍
121, 2, 3, 4, 6, 121 * 12, 2 * 6, 3 * 4
361, 2, 3, 4, 6, 9, 12, 18, 361 * 36, 2 * 18, 3 * 12, 4 * 9, 6 * 6
601, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 601 * 60, 2 * 30, 3 * 20, 4 * 15, 5 * 12, 6 * 10

한 행을 가로로 읽으면 가운데 열이 셋째 열을 펼친 것입니다. 12는 약수가 여섯 개이고 쌍이 셋, 36은 약수가 아홉 개이고 쌍이 다섯, 60은 약수가 열두 개이고 쌍이 여섯입니다. 비교할 것은 개수입니다. 여섯은 짝수, 아홉은 홀수, 열두는 짝수이고, 36은 표에서 유일한 완전제곱수라서 혼자 홀수입니다. 제곱근을 뺀 모든 약수는 짝지을 상대가 있어 짝수만큼 보태고, 제곱근만 자기 자신과 짝을 이룹니다. 또 하나 볼 만한 것은 약수의 많고 적음이 수의 크기를 따르지 않는다는 점입니다. 36은 12의 세 배인데 약수는 한 배 반이고, 60은 12의 다섯 배인데 약수는 두 배입니다. 약수의 개수는 그 수의 소인수 조각들이 어떻게 어우러지는지에서 나오지 크기에서 나오지 않습니다. 100만에 한참 못 미치는 720720이 그 근처의 어떤 수보다 약수가 많은 이유도 같습니다.

공식

60 ÷ 1 = 60 ⇒ 1 * 60; 60 ÷ 2 = 30 ⇒ 2 * 30; 60 ÷ 3 = 20 ⇒ 3 * 20; 60 ÷ 4 = 15 ⇒ 4 * 15; 60 ÷ 5 = 12 ⇒ 5 * 12; 60 ÷ 6 = 10 ⇒ 6 * 10; 60 ÷ 7은 나누어떨어지지 않고 8 × 8 > 60이므로 멈춤

n
약수를 구하는 대상이며 1에서 1000000 사이의 정수입니다. 1도 허용되고 약수를 하나만 냅니다. 이것은 퇴화한 답이 아니라 진짜 답입니다. 1은 자기 자신의 약수이고, 자기 자신을 제외하면 자기의 배수들만 나눕니다
d
시험용 나누는 수이며 1, 2, 3, 4 순서로 시험합니다. 페이지는 n의 제곱근을 넘겨 시험하지 않으며, 그 기준선이 요령의 전부입니다. d × e = n이고 d가 제곱근보다 크면 e는 제곱근보다 작으므로 e는 이미 찾아졌고 그 쌍도 이미 인쇄되었습니다
d * d ≤ n
정지 규칙을 풀어 쓴 것입니다. 60에서 마지막으로 시험하는 나누는 수는 7인데, 7 × 7 = 49는 60보다 작고 8 × 8 = 64는 60보다 크기 때문입니다. 이 규칙 때문에 시험 횟수가 입력이 아니라 입력의 제곱근만큼 늘어납니다. 100만은 100만 번이 아니라 1000번이면 됩니다
n / d
약수의 짝입니다. d가 n을 정확히 나누면 그 몫이 쌍의 나머지 반쪽이고, 페이지는 같은 단계에서 그것을 만듭니다. 60의 쌍이 1 * 60, 2 * 30, 3 * 20 순서로 정렬되어 나오는 이유가 이것입니다. 작은 쪽이 오름차순으로 발견되므로 쌍도 그렇게 나옵니다
1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 60
60의 모든 약수를 납작하게 오름차순으로 쓴 것입니다. 열두 개이고 짝수입니다. 짝짓기가 완전해서 모든 약수에 짝이 있습니다. 아래의 쌍과 같은 정보를 다르게 배열한 것이므로, 쌍을 읽으며 수를 모으면 이 줄이 그대로 나옵니다
6 * 6
36의 가운데 짝이며, 한 줄에 같은 약수가 두 번 나타나는 유일한 모양입니다. 36은 완전제곱수라 약수의 개수가 홀수입니다. 1, 2, 3, 4, 6, 9, 12, 18, 36으로 아홉 개이고, 페이지는 가운데 짝을 두 번이 아니라 한 번 인쇄합니다. 완전제곱수의 약수 개수가 결코 짝수가 되지 않는 이유입니다

분수를 약분하는 일이 약수 목록을 찾는 가장 흔한 이유입니다. 42/60을 손으로 줄이려면 둘을 함께 나누는 수를 찾아야 하는데, 60의 약수는 후보를 알려 주고 42의 약수는 그중 어느 것이 자격이 있는지 알려 줍니다. 그런 수 중 가장 큰 것이 최대공약수이고, 그것만 필요하면 gcf-calculator가 그 질문에 바로 답합니다. 두 번째 쓰임은 넓이가 정해진 직사각형입니다. 60제곱미터의 텃밭은 1 곱하기 60, 2 곱하기 30, 3 곱하기 20, 4 곱하기 15, 5 곱하기 12, 6 곱하기 10이 될 수 있고, 약수 쌍이 바로 그 가능한 모양의 목록입니다. 그래서 쌍이 그런 모양으로 인쇄됩니다. 같은 질문은 물건을 같은 줄과 같은 열로 늘어놓아야 할 때마다 나타납니다. 60명의 손님을 같은 크기의 상에 앉히거나, 한 명도 남기지 않고 같은 크기의 모둠으로 나누는 일이 그렇습니다. 세 번째 쓰임은 주장을 확인하는 것입니다. 누군가 91이 소수라고 하면 약수 목록이 그것을 정리합니다. 1, 7, 13, 91이고, 두 개가 아니라 네 개라는 사실이 반박입니다. 2, 3, 5, 9의 배수 판정법은 작은 경우를 손으로 덮고, 이 페이지는 그것이 더 이상 쉽지 않은 지점부터 이어받습니다. 질문이 약수가 아니라 조각에 관한 것일 때 답은 다른 곳에 있습니다. prime-factors-calculator는 수를 소인수로 쪼개는데, 이 페이지는 그것을 일부러 하지 않습니다. lcm-calculator와 gcf-calculator는 한 수를 설명하는 대신 두 수를 비교하고, simplify-fractions-calculator는 목록을 보여 주지 않고 공약수로 분수를 바로 줄입니다

계산 예시

  1. 약수가 열두 개인 수: 60

    1. 1을 시험합니다. 60 ÷ 1 = 60이므로 1과 60이 모두 약수입니다
    2. 2를 시험합니다. 60 ÷ 2 = 30이므로 2와 30이 약수이고, 3을 시험하면 60 ÷ 3 = 20이므로 3과 20이 나옵니다
    3. 4를 시험하면 60 ÷ 4 = 15로 4와 15, 5를 시험하면 60 ÷ 5 = 12로 5와 12가 나옵니다
    4. 6을 시험하면 60 ÷ 6 = 10으로 6과 10이 나오고, 7을 시험하면 60 ÷ 7은 정수가 아닙니다
    5. 8 × 8 = 64가 60을 넘으므로 멈춥니다. 열두 개의 약수가 모두 모였습니다

    기본 입력이고, 60이 그 아래의 어떤 수보다 약수가 많은 열두 개라서 좋은 예입니다. 탐색이 얼마나 쌌는지 보십시오. 예순 번이 아니라 일곱 번의 시험 나눗셈입니다. 약수 쌍 줄과 약수 목록은 같은 열두 개의 수이고, 쌍은 각 수가 곱해서 짝이 되는 수 옆에 오도록 접어 놓은 것뿐입니다. 쌍 목록이 10 * 6으로 이어지지 않고 6 * 10에서 끝난다는 점도 눈여겨보십시오. 쌍의 작은 쪽이 제곱근을 넘어서면 남은 쌍은 이미 인쇄된 것의 반복입니다.

  2. 완전제곱수: 36

    1. 1과 36이 짝이 되고, 이어서 2와 18, 3과 12, 4와 9가 짝이 됩니다
    2. 6 × 6 = 36이므로 6은 자기 자신이 짝입니다. 목록의 가운데입니다
    3. 7은 36을 나누지 못합니다. 7 × 7 = 49는 이미 36을 넘었지만, 제곱근 아래의 마지막 나누는 수는 6이었습니다
    4. 약수는 1, 2, 3, 4, 6, 9, 12, 18, 36이며 아홉 개, 곧 홀수입니다

    약수의 개수가 홀수가 될 수 있는 이유를 보여 주는 경우입니다. 제곱근을 뺀 모든 약수는 서로 다른 짝을 가지므로 둘씩 묶여 짝수만큼 보태고, 제곱근은 자기 자신과 짝을 이루어 하나를 보탭니다. 36이 더 큰 수인 60보다 적은 아홉 개를 갖고 12가 여섯 개를 갖는 이유의 전부입니다. 쌍 줄은 6 * 6을 두 번이 아니라 한 번 인쇄하는데, 이는 선택입니다. 두 번 인쇄하면 두 줄이 약수의 개수에 대해 서로 다른 말을 하게 됩니다.

  3. 소수(素數): 7

    1. 1을 시험합니다. 7 ÷ 1 = 7이므로 1과 7이 약수입니다
    2. 2를 시험하면 7 ÷ 2는 정수가 아니고, 3 × 3 = 9가 7을 넘으므로 탐색은 거기서 멈춥니다
    3. 1과 7 사이에는 나누는 수가 없습니다
    4. 약수 둘, 쌍 하나 — 이것이 소수(素數)의 정의입니다

    이 페이지에서 가장 짧은 비자명한 출력이고, 소수(素數)가 약수를 못 찾은 실패가 아니라는 것을 보여 줍니다. 소수(素數)는 약수가 정확히 둘인 수이고 그 둘은 언제나 1과 자기 자신이므로, 페이지는 아무것도 찾지 못했다고 보고하는 대신 그 사실을 보고합니다. 여기서 정지 규칙이 실제로 일을 합니다. 2를 시험한 뒤에는 시험할 것이 남아 있지 않습니다. 3 × 3이 이미 7보다 크기 때문입니다. 3, 4, 5, 6을 시험하면 나눗셈 네 번을 쓰고도 아무것도 찾을 수 없습니다.

한계

입력은 1에서 1000000 사이의 정수여야 합니다. 0은 거부합니다. 모든 정수가 0을 나누므로 약수 목록이 무한해지고, 인쇄할 만한 것이 없습니다. 음수도 거부합니다. ±1, ±2 같은 수가 모두 −60을 나누기는 하지만, 이 페이지는 양수의 양의 약수를 보고하고, 부호 있는 약수 목록이라면 두 부호를 모두 보여 줄지에 대한 관례가 필요한데 이 페이지는 그것을 밝히지 않습니다. 소수점이 있는 입력은 반올림하지 않고 거부합니다. 100만이라는 상한은 시행 나눗셈을 유계로 붙잡아 둡니다. 탐색이 제곱근에서 멈추므로 최악의 경우가 시험 1000번이고, 답 목록이 길어질 수는 있어도 감당 못 할 만큼 길어지지는 않습니다. 그래도 길어질 수는 있습니다. 720720은 100만 아래의 어떤 수보다 많은 240개의 약수를 갖고, 그 정도 크기의 목록은 정확하지만 읽기에 즐겁지는 않습니다. 이 페이지는 소인수가 아니라 약수와 약수 쌍을 보고하고, 그 차이는 놓치기 쉽습니다. 60의 약수 목록에 2, 3, 5가 들어 있지만 페이지는 60 = 2² × 3 × 5라고 말하지 않으며, 큰 수에서는 두 질문의 비용이 아주 다릅니다. 2, 3, 5, 9의 배수 판정법은 따로 표시되지 않습니다. 시행 나눗셈에 그대로 흡수되어 있어서, 0으로 끝나는 수는 까닭을 말해 주지 않은 채 2, 5, 10을 약수로 보여 줍니다. 모든 약수는 쉼표로 구분된 목록의 정수로 인쇄되고, 약수 쌍은 곱셈에 별표를 씁니다. 천 단위 구분 기호는 쓰지 않으므로 100만의 약수는 1000000으로 인쇄됩니다. 마지막으로 아래 참고표는 입력을 따라가지 않고 세 개의 고정된 수를 보여 줍니다. 입력한 값에 답하는 것은 위의 패널입니다.

자주 묻는 질문

약수로 인정되는 것은 정확히 무엇인가요?
입력한 수를 나머지 없이 정확히 나누는 정수입니다. 각 쌍의 양쪽이 모두 약수에 들어가므로 60의 목록은 1부터 60까지 이어집니다. 1과 자기 자신은 언제나 약수이고, 흥미로운 것은 그 사이에 있습니다. 나누어떨어져도 분수는 약수가 아닙니다. 2.5는 60에 스물네 번 들어가지만 정수가 아니므로 약수가 아닙니다. 이 페이지는 양수의 양의 약수를 나열하며, 그것이 표준적인 관례입니다.
탐색은 왜 제곱근에서 멈추나요?
그 아래에서 찾을 수 있는 약수는 모두 이미 본 약수의 짝이기 때문입니다. d × e = 60이고 d가 60의 제곱근보다 크면 e는 제곱근보다 작으므로, e는 앞에서 시험되었고 그 쌍도 그때 인쇄되었습니다. 그 지점을 넘겨 시험하면 짝을 반대 순서로 다시 찾을 뿐입니다. 60이 예순 번이 아니라 일곱 번의 시험 나눗셈으로 끝나는 이유이고, 이 페이지의 비용이 입력이 아니라 입력의 제곱근만큼 늘어나는 이유입니다. 100만 근처의 수는 100만 번이 아니라 대략 1000번의 시험으로 끝납니다.
36은 왜 약수의 개수가 홀수인가요?
36이 완전제곱수라 제곱근이 자기 자신과 짝을 이루기 때문입니다. 나머지 약수는 모두 다른 짝을 갖습니다. 1은 36과, 2는 18과, 3은 12와, 4는 9와 짝이 되고, 그런 짝은 각각 개수를 둘씩 늘립니다. 그다음 6 × 6 = 36이 하나를 보탭니다. 그래서 합계는 4 × 2 + 1 = 9입니다. 일반적으로 약수의 개수가 홀수인 것과 완전제곱수인 것은 같은 말이고, 약수 목록만 보고 그 수가 완전제곱수인지 가려내는 가장 빠른 방법입니다.
소인수분해와 같은 것인가요?
아니며, 차이를 분명히 해 둘 가치가 있습니다. 이 페이지는 모든 약수를 줍니다. 소인수분해는 수를 소수(素數)들의 곱으로 쪼갭니다. 60의 소인수분해는 2² × 3 × 5인데 페이지는 그것을 인쇄하지 않습니다. 다만 2, 3, 5는 약수 목록에 모두 나타나는데, 소수(素數)도 여느 약수와 같은 약수이기 때문입니다. 실질적인 차이는 비용입니다. 이 페이지는 수의 제곱근에 비례하는 일을 하지만 소인수분해는 큰 수에서 정말로 어렵고, 공개키 암호가 기대고 있는 전제가 바로 그것입니다.
0이나 음수를 넣어도 되나요?
안 되며, 어느 쪽도 임의의 제한이 아닙니다. 모든 정수가 0을 나누므로 0의 약수 목록은 끝나지 않습니다. 음수라면 약수가 두 부호로 함께 나옵니다. 1과 −1, 2와 −2 같은 식인데, 이 페이지는 둘 다 나열할지에 대해 입장을 정해야 하고 그런 입장을 갖고 있지 않습니다. 입력은 1에서 1000000 사이의 정수입니다. 소수점이 있는 입력도 반올림하지 않고 거부합니다. 반올림하면 다른 수에 대한 질문에 조용히 답하게 되기 때문입니다.
약수를 왜 두 열로 나눠 놓았나요?
서로 다른 두 질문에 답하기 때문입니다. 납작한 목록은 어떤 수가 내 수를 나누는지 알고 싶을 때 확인하는 것입니다. 쌍은 그 수가 내가 고르는 두 가지의 곱일 때 필요한 것입니다. 그 넓이를 갖는 직사각형, 같은 줄과 같은 열의 배치, 아무도 남기지 않는 모둠 나누기가 그렇습니다. 60제곱미터의 텃밭은 1 곱하기 60, 2 곱하기 30, 3 곱하기 20, 4 곱하기 15, 5 곱하기 12, 6 곱하기 10이 될 수 있고, 그 여섯 가지 모양이 곧 쌍 열입니다. 두 열은 같은 수를 담고 있고 배열만 다릅니다.

참고 문헌

관련 계산기