0은 소수 또는입니다. 소수를 결정하는 방법


제수의 열거.정의에 따르면 숫자 N 2와 1과 자신을 제외한 다른 정수로 나눌 수 없는 경우에만 단순합니다. 위의 공식을 사용하면 불필요한 단계를 제거하고 시간을 절약할 수 있습니다. 예를 들어 숫자가 3의 배수인지 확인한 후 9의 배수인지 확인할 필요가 없습니다.

  • floor(x) 함수는 x를 x보다 작거나 같은 가장 가까운 정수로 반올림합니다.

모듈식 산술에 대해 알아봅니다."x mod y" 연산(mod는 라틴어 "modulo", 즉 "module"의 약어)은 "x를 y로 나누고 나머지를 구한다"는 의미입니다. 즉, 모듈식 산술에서 특정 값에 도달하면 이를 기준 치수, 숫자는 다시 0으로 "돌아갑니다". 예를 들어 시계는 모듈 12로 카운트다운합니다. 시계는 10, 11 및 12시간을 표시한 다음 1로 돌아갑니다.

  • 많은 계산기에는 모드 키가 있습니다. 이 섹션의 끝에서는 큰 숫자에 대해 이 함수를 수동으로 계산하는 방법을 보여줍니다.
  • 페르마의 작은 정리의 함정에 대해 알아보십시오.테스트 조건이 충족되지 않은 모든 숫자는 합성이지만 나머지 숫자는 아마간단합니다. 잘못된 결과를 피하려면 검색 N"Carmichael number"(주어진 테스트를 만족하는 합성 수) 및 "pseudo 소수 Farm "(이 숫자는 일부 값에 대한 테스트 조건에 해당합니다. NS).

    편리한 경우 Miller-Rabin 검정을 사용합니다.이 방법은 수동 계산에 다소 번거롭지만 컴퓨터 프로그램에서 자주 사용됩니다. Fermat의 방법보다 허용 가능한 속도와 적은 오류를 제공합니다. ¼ 이상의 값에 대해 계산이 수행되면 합성 수는 소수로 간주되지 않습니다. NS... 무작위로 선택하면 다른 의미 NS그리고 그들 모두에 대해 테스트는 긍정적인 결과를 줄 것이고, 우리는 상당히 높은 수준의 확신을 가지고 N소수입니다.

  • 큰 수의 경우 모듈식 산술을 사용합니다.편리한 모드 계산기가 없거나 계산기가 그렇게 큰 수를 처리하도록 설계되지 않은 경우 전력 속성과 모듈식 산술을 사용하여 계산을 더 쉽게 만드십시오. 아래는 에 대한 예입니다 3 50 (\ displaystyle 3 ^ (50))모드 50:

    • 더 편리한 형식으로 표현식을 다시 작성하십시오: mod 50. 수동 계산에는 추가 단순화가 필요할 수 있습니다.
    • (3 25 * 3 25) (\ displaystyle (3 ^ (25) * 3 ^ (25))) mod 50 = mod 50 mod 50) mod 50. 여기서 우리는 모듈러 곱셈의 속성을 고려했습니다.
    • 3 25 (\ 표시 스타일 3 ^ (25))모드 50 = 43.
    • (3 25 (\ 표시 스타일 (3 ^ (25))모드 50 * 3 25 (\ displaystyle * 3 ^ (25))모드 50) 모드 50 = (43 * 43) (\ displaystyle (43 * 43))모드 50.
    • = 1849 (\ 디스플레이 스타일 = 1849)모드 50.
    • = 49 (\ 표시 스타일 = 49).

  • 이 기사에서 우리는 탐구 할 것입니다 소수와 합성수... 먼저 소수와 합성수의 정의와 예를 들어 설명하겠습니다. 그 후, 우리는 소수가 무한히 많다는 것을 증명할 것입니다. 다음으로 우리는 소수 표를 작성하고 소수 표를 컴파일하는 방법을 고려합니다. 특히 에라토스테네스의 체라고 불리는 방법에 대해 자세히 설명합니다. 결론적으로 주어진 숫자가 소수 또는 합성임을 증명할 때 고려해야 할 주요 사항을 강조합니다.

    페이지 탐색.

    소수 및 합성수 - 정의 및 예

    소수와 합성수는 1보다 큰 숫자를 나타냅니다. 이러한 정수는 양의 제수의 수에 따라 소수와 합성수로 나뉩니다. 그래서 이해하기 위해 소수 및 합성수의 정의, 제수와 배수가 무엇인지 잘 알고 있어야 합니다.

    정의.

    소수자신과 1이라는 양의 제수가 두 개뿐인 큰 정수입니다.

    정의.

    합성수다음을 갖는 정수, 큰 것입니다. 적어도, 세 개의 양수 제수.

    이와 별도로 숫자 1은 소수나 합성수에 적용되지 않습니다. 단위에는 숫자 1 자체인 양의 제수가 하나만 있습니다. 이것은 숫자 1을 적어도 두 개의 양의 제수가 있는 다른 모든 양의 정수와 구별합니다.

    양의 정수가 있고 단위에 양의 제수가 하나만 있다는 점을 감안할 때 소수 및 합성수의 소리가 나는 정의의 다른 공식을 제공할 수 있습니다.

    정의.

    간단한 숫자양의 약수가 두 개뿐인 자연수입니다.

    정의.

    합성수양의 약수가 2개 이상인 자연수입니다.

    1보다 큰 모든 양의 정수는 소수이거나 합성입니다. 다시 말해 단순하지도 않고 복합적이지도 않은 단일 정수는 없습니다. 이것은 숫자 1과 숫자가 항상 모든 정수 a의 약수임을 나타내는 나눗셈 속성에서 비롯됩니다.

    이전 단락의 정보를 기반으로 합성 숫자에 대한 다음 정의를 제공할 수 있습니다.

    정의.

    소수가 아닌 자연수를 성분.

    주자 소수 및 합성수의 예.

    합성 숫자의 예는 6, 63, 121 및 6697입니다. 이 진술도 설명이 필요합니다. 숫자 6은 양의 제수 1과 6 외에 제수 2와 3도 가집니다. 6 = 2 · 3이므로 6은 실제로 합성수입니다. 63의 양수 제수는 1, 3, 7, 9, 21, 63입니다. 121은 11 11과 같으므로 양수 제수는 1, 11 및 121입니다. 그리고 숫자 6 697은 1과 6 697 외에도 양수 제수가 37과 181이기 때문에 합성수입니다.

    이 점에서 나는 또한 소수와 공소수는 같은 것이 아니라는 사실에 주의를 기울이고 싶다.

    소수 테이블

    추가 사용의 편의를 위해 소수는 소수 표라는 표에 기록됩니다. 아래는 소수 테이블최대 1,000.

    논리적인 질문이 생깁니다. "우리는 왜 소수 테이블을 최대 1,000개까지만 채웠고, 기존의 모든 소수 테이블을 컴파일하는 것이 불가능합니까?"

    먼저 이 질문의 첫 번째 부분에 답해 보겠습니다. 대부분의 문제에 대해 소수를 사용해야 하는 솔루션에서 1000개 이내의 소수만 있으면 충분합니다. 다른 경우에는 몇 가지 특별한 솔루션 방법에 의존해야 할 가능성이 큽니다. 의심할 여지 없이, 우리는 10,000이든 1,000,000,000이든 임의의 큰 유한 양의 정수까지 소수 테이블을 컴파일할 수 있지만 다음 단락에서는 소수 테이블을 컴파일하는 방법에 대해 이야기할 것입니다. 특히 다음 방법을 분석합니다. 이름을 받았습니다.

    이제 모든 기존 소수의 테이블을 컴파일하는 가능성(또는 오히려 불가능)을 알아봅시다. 소수가 무한히 많기 때문에 모든 소수의 테이블을 컴파일할 수 없습니다. 마지막 진술은 다음 보조 정리 이후에 증명하는 정리입니다.

    정리.

    1보다 큰 자연수의 가장 작은 양수 및 1이 아닌 제수는 소수입니다.

    증거.

    하자 는 1보다 큰 자연수이고 b는 의 가장 작은 양수이고 1이 아닌 약수입니다. b가 소수임을 모순으로 증명하자.

    b가 합성수라고 가정합니다. 그런 다음 1과 b 모두와 다른 숫자 b의 제수가 있습니다(b 1이라고 표시하겠습니다). 제수의 절대 가치가 배당의 절대 가치를 초과하지 않는다는 점을 고려한다면(우리는 이것을 나눌 수 있는 속성에서 알 수 있습니다), 조건 1

    숫자 a는 가설에 의해 b로 나눌 수 있고 b는 b 1로 나눌 수 있다고 말했기 때문에, 나눗셈의 개념을 통해 a = bq 및 b = b 1 q와 같은 정수 q와 q 1의 존재를 말할 수 있습니다. 1, 여기서 a = b 1 (q 1 q). 두 정수의 곱은 정수이고 등식 a = b 1 · (q 1 · q)는 b 1이 숫자 a의 제수임을 나타냅니다. 위의 불평등을 고려하여 1

    이제 우리는 소수가 무한히 많다는 것을 증명할 수 있습니다.

    정리.

    무한히 많은 소수가 있습니다.

    증거.

    그렇지 않다고 가정해 봅시다. 즉, n개의 소수만 있고 이 소수가 p 1, p 2, ..., p n이라고 가정합니다. 표시된 것 이외의 소수를 항상 찾을 수 있음을 보여줍시다.

    p 1 · p 2 ·... · p n +1과 같은 수 p를 고려하십시오. 이 숫자가 각각의 소수 p 1, p 2,…, p n과 다르다는 것은 분명합니다. p가 소수이면 정리가 증명됩니다. 이 숫자가 합성수이면 이전 정리 덕분에 이 숫자의 소수가 있습니다(p n + 1로 표시). 이 제수가 p 1, p 2,..., p n과 일치하지 않음을 보여줍시다.

    그렇지 않다면, 나눗셈의 속성에 의해 곱 p 1 · p 2 ·... · p n은 p n + 1로 나눌 수 있습니다. 그러나 숫자 p는 p n + 1로도 나눌 수 있으며, 이는 p 1 · p 2 ·... · p n +1의 합과 같습니다. 1과 같은 이 합계의 두 번째 항은 p n + 1로 나누어야 하지만 이것은 불가능합니다.

    미리 할당된 소수에 없는 새로운 소수를 항상 찾을 수 있다는 것이 입증되었습니다. 따라서 소수가 무한히 많습니다.

    따라서 소수가 무한히 많다는 사실 때문에 소수 표를 컴파일할 때 항상 위에서부터 일정한 수(보통 100, 1,000, 10,000 등)로 제한됩니다.

    에라토스테네스의 체

    이제 소수 테이블을 컴파일하는 방법에 대해 논의할 것입니다. 100까지의 소수 테이블을 만들어야 한다고 가정해 봅시다.

    이 문제를 해결하는 가장 확실한 방법은 2에서 시작하여 100으로 끝나는 양의 정수를 순차적으로 확인하여 1보다 크고 테스트된 숫자보다 작은 양의 제수가 있는지 확인하는 것입니다(나누기 속성에서 제수의 절대 값은 0이 아닌 피제수의 절대 값을 초과하지 않습니다. 그러한 제수가 발견되지 않으면 확인 된 숫자가 소수이고 소수 테이블에 입력됩니다. 그러한 제수가 발견되면 확인 된 숫자는 합성이며 소수 테이블에 입력되지 않습니다. 그 후, 다음 숫자로의 전환이 일어나며, 이는 제수가 있는지 유사하게 확인됩니다.

    처음 몇 단계를 설명하겠습니다.

    우리는 숫자 2부터 시작합니다. 숫자 2는 1과 2를 제외하고 양의 약수가 없습니다. 따라서 간단하므로 소수 테이블에 입력합니다. 여기서 2는 가장 작은 소수라고 말해야 합니다. 숫자 3으로 이동합니다. 1과 3 이외의 가능한 양수 제수는 2입니다. 그러나 3은 2로 나누어 떨어지지 않으므로 3은 소수이며 소수 테이블에도 입력해야 합니다. 숫자 4로 넘어갑니다. 1과 4 이외의 양수 제수는 숫자 2와 3이 될 수 있습니다. 확인해 보겠습니다. 숫자 4는 2로 나눌 수 있으므로 4는 합성 숫자이며 소수 테이블에 입력할 필요가 없습니다. 4는 가장 작은 합성수입니다. 숫자 5로 이동합니다. 숫자 2, 3, 4 중 적어도 하나가 제수인지 확인하십시오. 5는 2, 3 또는 4로 나누어 떨어지지 않기 때문에 간단하고 소수 표에 기록해야 합니다. 그런 다음 최대 100까지 숫자 6, 7 등으로 전환됩니다.

    소수 테이블을 컴파일하는 이러한 접근 방식은 이상적이지 않습니다. 어떤 식 으로든 존재할 권리가 있습니다. 정수 테이블을 구성하는 이 방법을 사용하면 나눗셈 기준을 사용할 수 있으므로 제수를 찾는 프로세스가 약간 빨라집니다.

    라는 소수 테이블을 컴파일하는 더 편리한 방법이 있습니다. 이름에 있는 "체"라는 단어는 우연이 아닙니다. 이 방법의 작업은 합성에서 소수를 분리하기 위해 에라토스테네스의 정수, 큰 단위의 체를 "체로"하는 데 도움이 되기 때문입니다.

    최대 50개의 소수 테이블을 컴파일할 때 작동하는 에라토스테네스의 체를 보여줍시다.

    먼저 2, 3, 4, …, 50이라는 숫자를 순서대로 적습니다.


    첫 번째로 기록된 숫자 2는 소수입니다. 이제 숫자 2에서 두 개의 숫자만큼 오른쪽으로 연속적으로 이동하고 컴파일되는 숫자 테이블의 끝에 도달할 때까지 이 숫자를 지웁니다. 이렇게 하면 2의 배수가 모두 지워집니다.

    2 다음에 교차하지 않는 첫 번째 숫자는 3입니다. 이 숫자는 소수입니다. 이제 숫자 3에서 세 개의 숫자만큼 오른쪽으로 연속적으로 이동하고 (이미 지워진 숫자를 고려하여) 숫자를 지웁니다. 이렇게 하면 3의 배수인 모든 숫자가 지워집니다.

    3 다음에 교차되지 않은 첫 번째 숫자는 5입니다. 이 숫자는 소수입니다. 이제 숫자 5에서 5개의 숫자만큼 오른쪽으로 연속적으로 이동하고(이전에 지워진 숫자도 고려함) 숫자를 지웁니다. 이렇게 하면 5의 배수가 모두 지워집니다.

    그런 다음 7의 배수인 숫자를 지운 다음 11의 배수인 숫자를 지우십시오. 지워야 할 숫자가 남아 있지 않으면 프로세스가 종료됩니다. 아래는 에라토스테네스의 체를 사용하여 얻은 최대 50개의 소수에 대한 완전한 표입니다. 교차되지 않은 모든 숫자는 소수이고 모든 취소선 숫자는 합성입니다.

    에라토스테네스의 체를 사용하여 소수 테이블을 컴파일하는 과정을 가속화할 정리를 공식화하고 증명해 봅시다.

    정리.

    합성수의 가장 작은 양수 및 1이 아닌 제수는 초과하지 않습니다.

    증거.

    b를 합성수 a의 가장 작고 1이 아닌 제수라고 하자(숫자 b는 소수이며, 이는 이전 하위 섹션의 맨 처음에 증명된 정리에서 따온 것임). 그러면 a = b q(여기서 q는 정수 곱하기 규칙에서 따온 양의 정수임) 및 (b> q의 경우 b가 q의 최소 약수라는 조건이 위반되는 정수 q가 있습니다. a = q · b) 등식 덕분에 숫자의 약수이기도 합니다. 부등식의 양쪽에 1보다 큰 양의 정수 b를 곱하면(이 작업을 수행할 수 있음) 어디서 및를 얻을 수 있습니다.

    증명된 정리는 에라토스테네스의 체에 관해 무엇을 알려줍니까?

    첫째, 소수 b의 배수인 합성 숫자의 삭제는 다음과 같은 숫자로 시작해야 합니다(이는 부등식에서 따옴). 예를 들어, 2의 배수인 숫자를 지우는 것은 4로 시작하고, 3의 배수는 9로, 5의 배수는 25로 시작해야 합니다.

    둘째, 에라토스테네스의 체를 사용하여 n까지의 소수 테이블을 편집한 것은 초과하지 않는 소수의 배수인 모든 합성 숫자가 삭제될 때 완료된 것으로 간주할 수 있습니다. 우리의 예에서 n = 50(50까지의 소수 테이블을 컴파일하기 때문에) 따라서 에라토스테네스의 체는 다음을 초과하지 않는 소수 2, 3, 5 및 7의 배수인 모든 합성 수를 제거해야 합니다. 50의 산술 제곱근. 즉, 더 이상 소수 11, 13, 17, 19, 23 등의 소수의 배수인 숫자를 최대 47까지 검색하고 지울 필요가 없습니다. 3, 5, 7 ...

    이 숫자는 소수입니까, 합성입니까?

    일부 작업은 주어진 숫자가 소수인지 합성인지 알아내야 합니다. 일반적으로, 이 작업은 특히 숫자의 경우에 그리 쉽지 않습니다. 그 기록은 상당한 수의 문자로 구성되어 있습니다. 대부분의 경우 특정 문제를 해결할 수 있는 방법을 찾아야 합니다. 그러나 우리는 간단한 경우에 대해 생각의 기차에 방향을 제시하려고 노력할 것입니다.

    의심할 여지 없이, 주어진 숫자가 합성임을 증명하기 위해 나눗셈 기준을 사용할 수 있습니다. 예를 들어, 어떤 나눗셈의 부호가 주어진 숫자가 1보다 큰 양의 정수로 나눌 수 있음을 나타내면 원래 숫자는 합성수입니다.

    예시.

    숫자 898 989 898 989 898 989가 합성임을 증명하십시오.

    해결책.

    이 숫자의 자릿수의 합은 9 8 + 9 9 = 9 17입니다. 9 · 17과 같은 수는 9의 배수이므로 9의 배수에 따라 원래 수도 9의 배수라고 할 수 있습니다. 따라서 합성입니다.

    이 접근법의 중요한 단점은 나눗셈 기준으로 인해 숫자가 소수임을 증명할 수 없다는 것입니다. 따라서 숫자가 단순인지 합성인지 확인할 때는 다르게 행동해야 합니다.

    가장 논리적인 접근 방식은 주어진 숫자의 가능한 모든 제수를 반복하는 것입니다. 가능한 제수가 주어진 숫자의 진정한 제수가 아니면 이 숫자는 소수가 되고 그렇지 않으면 합성이 됩니다. 이전 섹션에서 증명된 정리로부터 주어진 수의 제수는 다음을 초과하지 않는 소수 중에서 구해야 한다는 결론이 나옵니다. 따라서 주어진 숫자 a는 숫자 a의 제수를 찾으려고 시도하면서 (소수 표에서 가져오는 것이 편리한) 소수로 순차적으로 나눌 수 있습니다. 제수가 발견되면 숫자는 합성수입니다. 초과하지 않는 소수 중에서 그 수의 약수가 없으면 그 수는 소수입니다.

    예시.

    숫자 11 723 단순 또는 복합?

    해결책.

    숫자 11 723의 약수가 어떤 소수인지 알아봅시다. 이를 위해 우리는 추정할 것입니다.

    그것은 상당히 명백하다. , 200 2 = 40 000 및 11 723 이후<40 000 (при необходимости смотрите статью 숫자의 비교). 따라서 11,723에 대해 가능한 소인수는 200보다 작습니다. 이것은 이미 우리의 작업을 크게 촉진합니다. 우리가 이것을 모른다면 200까지가 아니라 11 723까지의 모든 소수에 대해 반복해야 할 것입니다.

    원하는 경우 더 정확하게 추정할 수 있습니다. 108 2 = 11 664, 109 2 = 11 881이므로 108 2<11 723<109 2 , следовательно, ... 따라서 109보다 작은 소수는 잠재적으로 주어진 숫자 11,723의 약수가 됩니다.

    이제 우리는 숫자 11 723을 소수 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107. 숫자 11,723을 기록된 소수 중 하나로 완전히 나누면 합성이 됩니다. 쓰여진 소수로 나누어 떨어지지 않으면 원래 숫자는 소수입니다.

    우리는 이 단조롭고 단조로운 분할 과정을 설명하지 않을 것입니다. 바로 11 723

    이 기사에서는 소수와 합성수의 개념에 대해 설명합니다. 이러한 숫자의 정의는 예와 함께 제공됩니다. 우리는 소수의 수가 무제한임을 증명하고 에라토스테네스의 방법을 사용하여 소수의 표에 씁니다. 숫자가 소수인지 합성인지에 대한 증거가 제공됩니다.

    Yandex.RTB R-A-339285-1

    소수 및 합성수 - 정의 및 예

    소수와 합성수는 양의 정수로 분류됩니다. 1보다 커야 합니다. 제수도 단순과 복합으로 나뉩니다. 합성수의 개념을 이해하려면 먼저 약수와 배수의 개념을 공부해야 합니다.

    정의 1

    소수는 1보다 크고 두 개의 양의 약수, 즉 자신과 1을 갖는 정수입니다.

    정의 2

    합성수는 1보다 크고 적어도 세 개의 양의 제수가 있는 정수입니다.

    단위는 소수도 합성수도 아닙니다. 양수는 단 하나뿐이므로 다른 모든 양수와 다릅니다. 모든 양의 정수를 자연이라고 합니다. 즉, 계산에 사용됩니다.

    정의 3

    소수양의 약수가 두 개뿐인 자연수입니다.

    정의 4

    합성 수양의 약수가 2개 이상인 자연수입니다.

    1보다 큰 숫자는 소수 또는 합성수입니다. 나눗셈 속성에서 우리는 1과 숫자가 항상 임의의 숫자에 대한 제수임을 알 수 있습니다. 즉, 그 자체와 1로 나눌 수 있습니다. 정수의 정의를 봅시다.

    정의 5

    소수가 아닌 자연수를 합성수라고 합니다.

    소수: 2, 3, 11, 17, 131, 523. 그들은 자신과 1로만 나뉩니다. 합성 숫자: 6, 63, 121, 6697. 즉, 숫자 6은 2와 3으로, 63은 1, 3, 7, 9, 21, 63, 121로 분해하여 11, 11로 분해할 수 있습니다. 즉, 그 약수는 1, 11, 121이 됩니다. 숫자 6697은 37과 181로 확장됩니다. 소수와 공소수의 개념은 다른 개념입니다.

    소수를 더 쉽게 사용하려면 테이블을 사용해야 합니다.

    기존의 모든 자연수에 대한 표는 무한한 수가 있기 때문에 비현실적입니다. 숫자가 10,000 또는 1,000,000,000에 도달하면 에라토스테네스의 체 사용에 대해 생각해야 합니다.

    마지막 진술을 설명하는 정리를 고려하십시오.

    정리 1

    1보다 큰 자연수의 가장 작은 양수 및 1이 아닌 제수는 소수입니다.

    증거 1

    a가 1보다 큰 자연수이고, b가 숫자 a에 대해 1이 아닌 가장 작은 약수라고 가정합시다. b가 소수임을 증명하십시오.

    b가 합성수라고 하자. 따라서 우리는 b뿐만 아니라 1과도 다른 b에 대한 제수가 있음을 알 수 있습니다. 이러한 제수는 b 1로 표시됩니다. 조건 1이 필요하다.< b 1 < b 충족되었습니다.

    조건은 a는 b로 나눌 수 있고 b는 b로 나눌 수 있음을 보여줍니다. 즉, 나눗셈의 개념은 다음과 같이 표현됩니다. a = b q b = b 1 q 1, 여기서 a = b 1 (q 1 q), 여기서 q 및 질문 1정수입니다. 정수의 곱셈 규칙에 따르면 정수의 곱은 a = b 1 · (q 1 · q) 형식과 같은 정수입니다. b1임을 알 수 있다. 숫자의 제수입니다. 불평등 1< b 1 < b ~ 아니다 b가 의 가장 작은 양수이고 1이 아닌 제수라는 것을 알기 때문입니다.

    정리 2

    무한히 많은 소수가 있습니다.

    증거 2

    유한한 수의 자연수 n을 취하여 p 1, p 2,…, p n으로 표시한다고 가정합니다. 표시된 것 이외의 소수를 찾는 옵션을 고려하십시오.

    p 1, p 2, ..., p n + 1과 같은 숫자 p를 고려해 보겠습니다. p 1, p 2, ..., p n 형식의 소수에 해당하는 각 숫자와 같지 않습니다. P는 소수입니다. 그런 다음 정리가 증명된 것으로 간주됩니다. 합성인 경우 p n + 1 표기법을 취해야 합니다. 제수가 p 1, p 2,…, p n 중 어느 것과도 일치하지 않음을 보여줍니다.

    그렇지 않은 경우 제품의 나눌 수 있는 속성에 따라 p 1, p 2, ..., p n , 우리는 그것이 p n + 1로 나눌 수 있음을 얻습니다. 표현식 p n + 1 p를 나눈 숫자는 p 1, p 2,…, p n + 1의 합과 같습니다. 우리는 표현 p n + 1 이 합계의 두 번째 항은 1과 같아야 하지만 이것은 불가능합니다.

    주어진 소수 중에서 임의의 소수를 찾을 수 있음을 알 수 있습니다. 따라서 소수가 무한히 많습니다.

    소수가 많기 때문에 테이블은 100, 1000, 10000 등의 숫자로 제한됩니다.

    소수 테이블을 컴파일할 때 이러한 작업의 경우 2에서 100까지 숫자를 순차적으로 확인해야 한다는 점을 염두에 두어야 합니다. 제수가 없으면 표에 기록하고, 합성이면 표에 기록하지 않습니다.

    단계별로 고려해 보겠습니다.

    숫자 2로 시작하는 경우 제수는 2개(2와 1)뿐이므로 테이블에 입력할 수 있습니다. 또한 숫자 3과 함께. 숫자 4는 합성수이므로 2와 2로 분해해야 합니다. 숫자 5는 간단하므로 테이블에 고정할 수 있습니다. 100까지 해보세요.

    이 방법은 불편하고 시간이 많이 걸립니다. 테이블을 만들 수는 있지만 많은 시간을 보내야 합니다. 제수를 찾는 과정을 가속화하는 나눗셈 기준을 사용할 필요가 있습니다.

    Eratosthenes의 체를 사용하는 방법이 가장 편리한 것으로 간주됩니다. 아래 표의 예를 살펴보겠습니다. 먼저 숫자 2, 3, 4, ..., 50이 기록됩니다.

    이제 2의 배수인 모든 숫자를 지워야 합니다. 연속 취소선을 수행합니다. 우리는 다음과 같은 형식의 테이블을 얻습니다.

    계속해서 5의 배수인 숫자를 지웁니다. 우리는 다음을 얻습니다.

    7, 11의 배수인 숫자를 지우십시오. 결국, 테이블은 다음과 같습니다.

    정리의 공식화를 살펴보자.

    정리 3

    밑수 a의 가장 작은 양수 및 1이 아닌 제수는 a를 초과하지 않으며, 여기서 주어진 수의 산술근입니다.

    증거 3

    b를 합성수의 최소 약수로 지정해야 합니다. 정수 q가 있고, 여기서 = b q이고 우리는 b ≤ q를 갖습니다. 형태의 불평등 b> q,조건 위반이 발생하기 때문입니다. 부등식 b ≤ q의 양쪽에 1이 아닌 양수 b를 곱해야 합니다. 우리는 b b ≤ b q를 얻습니다. 여기서 b 2 ≤ a 및 b ≤ a입니다.

    증명된 정리에서 테이블에서 숫자를 삭제하면 b 2 와 같은 숫자로 시작해야 하고 부등식 b 2 ≤ a를 만족하는 숫자로 시작해야 한다는 사실을 알 수 있습니다. 즉, 2의 배수인 숫자를 지우면 프로세스가 4에서 시작하고 3의 배수가 9에서 100까지 계속됩니다.

    Eratosthenes의 정리를 사용하여 이러한 테이블을 편집하면 모든 합성 숫자를 삭제할 때 n을 초과하지 않는 단순한 숫자가 있을 것이라고 제안합니다. n = 50인 예에서 n = 50입니다. 따라서 우리는 에라토스테네스의 체로 50의 근의 값보다 크지 않은 모든 합성 수를 제거한다는 것을 발견했습니다. 숫자는 긋는 방식으로 검색됩니다.

    결정하기 전에 숫자가 소수인지 합성인지 확인해야 합니다. 분할 기준이 자주 사용됩니다. 아래 예에서 이것을 고려하십시오.

    실시예 1

    숫자 898989898989898989가 합성임을 증명하십시오.

    해결책

    주어진 숫자의 자릿수의 합은 9 8 + 9 9 = 9 17입니다. 이것은 숫자 9 17이 9의 배수 기호에 따라 9의 배수임을 의미합니다. 따라서 합성이라는 결론이 나온다.

    그러한 기호는 숫자의 단순성을 증명할 수 없습니다. 확인이 필요한 경우 다른 조치를 취해야 합니다. 가장 적합한 방법은 숫자를 반복하는 것입니다. 이 과정에서 소수와 합성수를 찾을 수 있습니다. 즉, 숫자가 값을 초과해서는 안됩니다. 즉, 숫자는 소인수로 분해되어야 합니다. 이것이 완료되면 숫자는 소수로 간주될 수 있습니다.

    실시예 2

    합성수 또는 소수 11723을 결정합니다.

    해결책

    이제 숫자 11723에 대한 모든 제수를 찾아야 합니다. 11723을 평가해야 합니다.

    여기에서 우리는 11723< 200 , то 200 2 = 40 000 , 11 723< 40 000 . Получаем, что делители для 11 723 меньше числа 200 .

    숫자 11723을 더 정확하게 추정하려면 108 2 = 11 664라는 식을 적어야 합니다. 109 2 = 11 881 , 그 다음에 108 2 < 11 723 < 109 2 ... 따라서 11723< 109 . Видно, что любое число, которое меньше 109 считается делителем для заданного числа.

    확장에서 우리는 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79를 얻습니다. , 83, 89, 97, 101, 103, 107은 모두 소수입니다. 이 전체 과정은 긴 분할로 나타낼 수 있습니다. 즉, 11723을 19로 나눕니다. 숫자 19는 나머지 없이 나눗셈을 하기 때문에 그 요인 중 하나입니다. 열로 나누기를 표현해 보겠습니다.

    따라서 11723은 합성수입니다. 1 자체 외에 1의 약수가 19이기 때문입니다.

    답변: 11723은 합성 숫자입니다.

    텍스트에 오류가 있는 경우 해당 텍스트를 선택하고 Ctrl + Enter를 누르십시오.

    숫자는 자연, 자연, 유리, 전체 및 분수, 양수와 음수, 복소수와 단순, 홀수와 짝수, 실수 등 다양합니다. 이 기사에서 소수가 무엇인지 알 수 있습니다.

    영어 단어 "simple"이라고 하는 숫자는 무엇입니까?

    종종 학생들은 소수가 무엇인지에 대한 수학의 겉보기에 단순한 질문 중 하나에 답하는 방법을 모릅니다. 그들은 종종 소수를 자연수와 혼동합니다. 그러나 이들은 완전히 다른 두 가지 개념입니다. 소수는 자연수, 즉 1보다 크고 자연 제수가 2개인 정수 및 양수입니다. 또한 이러한 제수 중 하나는 주어진 숫자이고 두 번째는 1입니다. 예를 들어, 3은 자신과 1 이외의 다른 숫자로 나눌 수 없기 때문에 소수입니다.

    합성수

    합성수는 소수의 반대입니다. 그들은 또한 자연스럽고 하나 이상이지만 둘이 아니라 더 많은 제수가 있습니다. 예를 들어 숫자 4, 6, 8, 9 등은 자연수, 합성수이지만 소수는 아닙니다. 보시다시피, 이들은 대부분 짝수이지만 전부는 아닙니다. 그러나 "2"는 일련의 소수에서 짝수이자 "첫 번째 숫자"입니다.

    하위 시퀀스

    일련의 소수를 구성하려면 정의를 고려하여 모든 자연수 중에서 선택해야 합니다. 즉, 모순에 따라 행동해야 합니다. 두 개 이상의 제수가 있는지 확인하려면 양의 자연수 각각을 고려해야 합니다. 소수의 계열(수열)을 만들어 봅시다. 목록은 2로 시작하고 다음은 3입니다. 그 자체와 1로만 나눌 수 있기 때문입니다. 숫자 4를 고려하십시오. 4와 1 이외의 제수가 있습니까? 예, 이것은 숫자 2입니다. 따라서 4는 소수가 아닙니다. 5도 소수이지만(1과 5를 제외하고는 다른 숫자로 나눌 수 없음) 6은 나눌 수 있습니다. 그리고 일반적으로 모든 짝수를 따라가면 "2"를 제외하고는 어느 것도 단순하지 않다는 것을 알 수 있습니다. 이것으로부터 우리는 2를 제외한 짝수는 소수가 아니라는 결론을 내립니다. 또 다른 발견: 짝수든 홀수든 3 자체를 제외하고 3으로 나눌 수 있는 모든 숫자도 단순하지 않습니다(6, 9, 12, 15, 18, 21, 24, 27 등). 5와 7로 나누어 떨어지는 수의 경우에도 마찬가지입니다. 그들 모두는 또한 간단하지 않습니다. 요약해보자. 따라서 1과 9를 제외한 모든 홀수와 짝수부터 "2"만 간단한 한 자리 숫자에 속합니다. 십 자체(10, 20, ... 40 등)는 간단하지 않습니다. 두 자리, 세 자리 등의 소수는 위의 원칙에 따라 결정될 수 있습니다. 자신과 단위를 제외하고 다른 제수가 없는 경우.

    소수의 성질에 관한 이론

    소수를 포함한 정수의 속성을 연구하는 과학이 있습니다. 이것은 고등이라고 불리는 수학의 한 분야입니다. 그녀는 정수의 속성 외에도 대수적, 초월적 수 및 이러한 수의 산술과 ​​관련된 다양한 기원의 기능을 다룹니다. 이 연구에서는 초등 및 대수 방법 외에도 분석 및 기하학적 방법도 사용됩니다. 특히 소수 연구는 "숫자 이론"에 종사하고 있습니다.

    소수는 자연수의 "구성 요소"입니다.

    산술에는 주정리라고 하는 정리가 있습니다. 그녀에 따르면 1을 제외한 모든 자연수는 곱으로 나타낼 수 있으며, 그 인수는 소수이고 인수의 순서가 고유하므로 표현 방법이 고유합니다. 자연수의 소인수분해라고 합니다. 이 과정의 또 다른 이름은 숫자의 인수분해입니다. 이를 바탕으로 소수는 "건축 자재", 자연수를 구성하는 "블록"이라고 부를 수 있습니다.

    소수를 검색합니다. 단순성 테스트

    여러 시대의 많은 과학자들이 소수의 목록을 찾기 위한 몇 가지 원칙(시스템)을 찾으려고 노력했습니다. 과학은 Atkin 체, Sundartam 체, Eratosthenes 체라고 하는 시스템을 알고 있습니다. 그러나 그들은 유의미한 결과를 제공하지 않으며 간단한 검사를 사용하여 소수를 찾습니다. 알고리즘도 수학자에 의해 만들어졌습니다. 이를 단순성 테스트라고 합니다. 예를 들어, Rabin과 Miller가 개발한 테스트가 있습니다. 암호학자들이 사용합니다. Kayala-Agravala-Saskena 테스트도 있습니다. 그러나 충분한 정확도에도 불구하고 계산하기가 매우 어려워 실제 가치가 떨어집니다.

    소수의 집합에 제한이 있습니까?

    고대 그리스 과학자 유클리드는 "시작"이라는 책에서 단순한 것의 집합이 무한하다고 썼습니다. 그는 이렇게 말했습니다. “잠시 소수에 한계가 있다고 가정해 봅시다. 그런 다음 서로 곱하고 곱에 1을 더합니다. 이러한 간단한 작업의 결과로 얻은 숫자는 나머지에 항상 1이 있기 때문에 일련의 소수로 나눌 수 없습니다. 이것은 소수 목록에 아직 포함되지 않은 다른 숫자가 있음을 의미합니다. 따라서 우리의 가정은 사실이 아니며 이 집합은 제한을 가질 수 없습니다. 유클리드의 증명 외에도 18세기 스위스 수학자 레너드 오일러가 제시한 보다 현대적인 공식이 있습니다. 그에 따르면 처음 n개의 수의 합에 역수의 합은 수 n의 증가에 따라 무한히 증가합니다. 그리고 여기에 소수의 분포에 관한 정리의 공식이 있습니다. (n)은 n / ln (n)처럼 자랍니다.

    가장 큰 소수는 무엇입니까?

    모두 같은 Leonard Euler는 그의 시간 동안 가장 큰 소수를 찾을 수 있었습니다. 이것은 2 31 - 1 = 2147483647입니다. 그러나 2013년까지 소수 목록에서 가장 정확한 또 다른 가장 큰 숫자가 계산되었습니다. - 2 57885161 - 1. 이를 메르센 수라고 합니다. 약 1,700만 개의 십진수가 포함되어 있습니다. 보시다시피 18세기 과학자가 발견한 숫자는 이보다 몇 배나 적습니다. 오일러가 이 계산을 수동으로 수행했지만 우리 동시대의 사람은 아마도 컴퓨터의 도움을 받았을 것이기 때문에 이것은 그래야 하는 대로였습니다. 또한이 번호는 미국 학부 중 하나의 수학 학부에서 얻었습니다. 이 과학자의 이름을 딴 숫자는 단순성에 대한 Luc-Lemaire 테스트를 통과했습니다. 그러나 과학은 여기서 멈추지 않습니다. 1990년 미국(EFF)에서 설립된 Electronic Frontier Foundation은 큰 소수를 찾는 데 대해 금전적 보상을 제공했습니다. 그리고 2013년까지 100만과 1000만 소수 중에서 그것을 찾는 과학자들에게 상을 수여했다면 오늘날 이 수치는 1억에서 10억에 이르렀습니다. 상금은 $ 150,000에서 $ 250,000입니다.

    특수 소수 이름

    특정 과학자가 만든 알고리즘 덕분에 발견되어 단순성 테스트를 통과한 숫자를 특수 숫자라고 합니다. 다음은 그 중 일부입니다.

    1. 메르센.

    4. 컬렌.

    6. Mills et al.

    위의 과학자들의 이름을 따서 명명된 이 숫자의 단순성은 다음 테스트를 사용하여 설정됩니다.

    1. 루카스-레머.

    2. 피핀.

    3. 리젤.

    4. Billhart - Lemer - Selfridge 및 기타.

    현대과학은 여기서 그치지 않고 아마도 머지않아 세계는 가장 큰 소수를 찾아 25만 달러의 상금에 당첨된 이들의 이름을 알아볼 것이다.

    목표 2.30
    자연수로 구성된 1차원 배열 A가 주어집니다. 배열에 있는 소수의 수를 표시합니다.

    먼저 소수가 무엇인지 상기시켜 드리겠습니다.

    이제 작업을 진행해 보겠습니다. 기본적으로 소수를 감지하는 프로그램이 필요합니다. 그리고 요소를 반복하고 값을 확인하는 것은 기술의 문제입니다. 동시에 계산할 수 있을 뿐만 아니라 배열의 소수를 표시할 수도 있습니다.

    파스칼에서 소수를 결정하는 방법

    파스칼로 자세한 분석과 함께 솔루션 알고리즘을 알려드리겠습니다. C ++의 예제 프로그램에서 솔루션을 볼 수 있습니다.

    중요한!
    이것에 대해 많은 사람들이 실수 할 수 있습니다. 정의에 따르면 소수는 매끄러운두 개의 다른분할기. 따라서 숫자 1은 소수가 아닙니다(0은 임의의 숫자로 나눌 수 있으므로 소수도 아닙니다).

    우리는 우리 자신이 만들 도움으로 숫자가 소수인지 확인할 것입니다. 이 함수는 숫자가 소수이면 TRUE를 반환합니다.

    함수에서 먼저 숫자가 2보다 작은지 확인합니다. 그렇다면 더 이상 소수가 아닙니다. 숫자가 2 또는 3이면 명확하게 간단하고 추가 검사가 필요하지 않습니다.

    그러나 숫자 N이 3보다 크면 이 경우 루프에서 2에서 (N-1)까지 가능한 모든 제수를 반복합니다. 숫자 N이 나머지 없이 일부 제수로 나누어지면 이 또한 소수가 아닙니다. 이 경우 루프를 중단하고(더 확인할 필요가 없기 때문에) 함수는 FALSE를 반환합니다.

    숫자가 그 자체로 나누어 떨어지는지 여부를 확인하는 것은 의미가 없습니다(따라서 주기는 N-1까지만 지속됨).

    여기서 기능 자체를 제공하지는 않을 것입니다. 프로그램의 예에서 살펴보십시오.

    파스칼로 문제 2.30 풀기마이태스크; // *********************************************** * *************** // 상수 // **************************** ** ********************************* 카운트 = 100; // 배열의 요소 수 // **************************************** * *********************** // 기능 및 절차 // ******************* *** ******************************************* // *** ************************************************** * ********* // 숫자가 소수인지 확인 // INPUT: N - 숫자 // OUTPUT: TRUE - 소수 N, FALSE - 소수가 아님 // ******** ************************************************** * **** IsPrimeNumber(N: WORD):; 변수 나:; 시작: = 참; 0..3의 N: N 종료 시작; 끝; 끝; i: = 2 ~ (N-1) do if (N i) = 0 then // 시작하는 소수가 아님 결과: = FALSE; ; 끝; 끝; 나: 단어; X: 단어 = 0; A: WORD; // *********************************************** * *************** // 메인 프로그램 // **************************** * *********************************** begin // i: = 1에서 COUNT까지의 숫자로 배열을 채웁니다. A [i]: = 나는; // i에 대한 배열에서 소수를 계산하고 선택합니다. = 1 to COUNT do if IsPrimeNumber (A [i]) then begin (X); 쓰기 (A [i], ""); 끝; (# 10 # 13 "소수 =", X); WriteLn("끝. Enter 키를 누르십시오..."); ; 끝.

    C++에서 문제 2.30 풀기#포함하다 #포함하다 네임스페이스 std 사용 // *********************************************** * *************** // 상수 // **************************** ** ********************************* const int COUNT = 100; // 배열의 요소 수 // *************************************** ** *********************** // 기능 및 절차 // ****************** **** ****************************************** // ** *** *********************************************** ** ********* // 숫자가 소수인지 확인 // INPUT: N - 숫자 // OUTPUT: TRUE - 소수 N, FALSE - 소수가 아님 // ******** ************************************************** * **** bool IsPrimeNumber(int N) (bool Res = true, switch(N)(케이스 0: Res = false, break, 케이스 1: Res = false, break, 케이스 2: Res = true, break, 케이스 3 : 해상도 = true; 중단; 기본값: for (int i = 2; i