Проверите да ли је број прост

Аутор: John Pratt
Датум Стварања: 9 Фебруар 2021
Ажурирати Датум: 28 Јуни 2024
Anonim
Топ 5 СТРАШНЫХ видео, которые ДОКАЗЫВАЮТ, что призракам НЕ СТЫДНО
Видео: Топ 5 СТРАШНЫХ видео, которые ДОКАЗЫВАЮТ, что призракам НЕ СТЫДНО

Садржај

Прости бројеви су бројеви који су само дељиви сами и називају се 1 - други бројеви једињење бројеви. Што се тиче испитивања да ли је неки број прост, постоји неколико опција. Неке од ових метода су релативно једноставне, али за веће бројеве нису нимало практичне. Остали тестови који се често користе су заправо комплетни алгоритми засновани на једном вероватноћа који број погрешно понекад сматрају простим. Прочитајте корак 1 да бисте научили како да се тестирате ако имате посла са простим бројем.

На корак

Метод 1 од 4: Покушајте да поделите

Покушај дељења је далеко најлакши начин за тестирање броја. За мале бројеве то је обично и најбржи начин. Тест се заснива на дефиницији простог броја: број је прост ако је само дељив са собом и 1.

  1. Претпоставимо н је број који желите да тестирате. Поделите број н са свим могућим дељивим целим бројевима. За веће бројеве попут н = 101 крајње је непрактично делити са било којим могућим целим бројем мањим од н. Срећом, постоји неколико трикова за смањење броја фактора који се испитују.
  2. Утврдите да ли н Чак. Сви парни бројеви су потпуно дељиви са 2. Према томе, ако је н паран, то можете рећи н је композитни број (и самим тим није прост број). Да бисте брзо утврдили да ли је број паран, морате обратити пажњу само на последњу цифру. Ако је последња цифра 2, 4, 6, 8 или 0, онда је број паран и није прост.
    • Једини изузетак од овог правила је сам број 2 који је, јер је дељив сам по себи и 1, такође прост. 2 је једини парни приме.
  3. Део н било којим бројем између 2 и н-1. Будући да прости број нема друге факторе осим себе и 1 и зато што су целобројни фактори мањи од њиховог производа, провера дељивости целог броја мањег од н и већег од 2 одредиће да ли је н прост. Почињемо након 2, јер парни бројеви (вишекратници 2) не могу бити прости бројеви. Ово је далеко од ефикасног начина тестирања, као што ћете видети доле.
    • На пример, ако бисмо желели да користимо ову методу да бисмо тестирали да ли је 11 једноставно или не, делили бисмо 11 са 3, 4, 5, 6, 7, 8, 9 и 10, тражећи цео одговор без остатка. Будући да се ниједан од ових бројева не уклапа у потпуности у 11, можемо рећи да је 11 један је приме.
  4. Да бисте уштедели време, тестирајте само до скрт (н), заокружен. Тестирање броја н провером свих бројева између 2 и н-1 може брзо потрајати много времена. На пример, ако бисмо желели да проверимо да ли је 103 овом методом, морали бисмо да поделимо са 3, 4, 5, 6, 7 ... итд, све до 102! Срећом, није потребно овако тестирати. У пракси је потребно само тестирати факторе између 2 и квадратног корена н. Ако квадратни корен из н није број, заокружите га на најближи цели број и тестирајте на овај број. Погледајте објашњење у наставку:
    • Испитајмо факторе 100. 100 = 1 × 100, 2 × 50, 4 × 25, 5 × 20, 10 × 10, 20 × 5, 25 × 4, 50 × 2 и 100 × 1. Имајте на уму да су после 10 × 10 фактори исти ако је то за 10 × 10, тек онда преокренуто. Генерално, можемо занемарити факторе н веће од скрт (н), јер су они једноставно наставак фактора мањих од скрт (н).
    • Покушајмо на примеру. Ако је н = 37, тада не треба да тестирамо све бројеве од 3 до 36 да бисмо утврдили да ли је н прост. Уместо тога, само треба да погледамо бројеве између 2 и скрт (37) (заокружено).
      • скрт (37) = 6,08 - заокружићемо ово на 7.
      • 37 није у потпуности дељив са 3, 4, 5, 6 и 7, тако да са сигурношћу можемо рећи да је један прост број је.
  5. Да бисмо уштедели још више времена, користимо само основне факторе. Процес тестирања могуће је учинити дељењем још краће не укључујући оне факторе који нису прости бројеви. По дефиницији, сваки композитни број може се изразити као умножак два или више простих бројева. Тако да је дељење броја н композитним бројем непотребно - ово је еквивалентно подели са простим бројевима неколико пута. Дакле, можемо даље сузити листу могућих фактора на само просте бројеве мање од скрт (н).
    • То значи да сви парни фактори, као и фактори који су вишеструки прости бројеви, могу бити прескочени.
    • На пример, покушајмо да утврдимо да ли је 103 основно или не. Квадратни корен из 103 је 11 (заокружено). Прости бројеви између 2 и 11 су 3, 5, 7 и 11. 4, 6, 8 и 10 су парни, а 9 је вишекратник 3, прост број, па га можемо прескочити. Радећи ово смањили смо листу могућих фактора на само 4 броја!
      • 103 није потпуно дељиво ни са 3, 5, 7 или 11, тако да сада знамо да је 103 један прост број је.

Метод 2 од 4: Коришћење Ферматове мале теореме

Француски математичар Пиерре де Фермат је 1640. године први пут предложио теорему (која је сада названа по њему) која може бити од велике помоћи у одређивању да ли је неки број прост. Технички, Ферматов тест има за циљ да потврди да је број састављен, а не прост. То је зато што тест може са „апсолутном сигурношћу“ да покаже да је број сложен, али само „вероватноћа“ да је број прост. Ферматова мала теорема корисна је у ситуацијама када је покушај дељења непрактичан и када постоји списак бројева који су изузеци од теореме.


  1. Претпоставимо н број је за тестирање. Овим тестом утврђујете да ли је дати број н прост. Међутим, као што је горе напоменуто, ова теорема може повремено погрешно окарактерисати неко једињење као основно. Важно је то узети у обзир и проверити свој одговор, који је објашњен у наставку.
  2. Изаберите цео број а између 2 и н-1 (укључујући). Тачан цео број који сте изабрали није важан. Пошто параметри за а укључују 2 и н-1, такође их можете користити.
    • Пример: Да ли је 100 премијера или не. Претпоставимо да узмемо 3 као тест вредност - ово је између 2 и н-1, па је то довољно.
  3. израчунати а (мод н). Разрада овог израза захтева одређено знање о математичком систему тзв модуларна математика. У модуларној математици, бројеви се враћају на нулу по постизању одређене вредности, такође познате као модул. Можете ово замислити као сат: на крају ће се казаљка сата вратити на 1 сат после 12 сати, а не на 13 сати. Модул је означен као (мод н). Дакле, у овом кораку израчунавате а са модулом н.
    • Друга метода је израчунавање а, затим подела са н, а остатак као одговор. Специјализовани калкулатори са функцијом модула могу бити врло корисни при дељењу великих бројева, јер могу одмах израчунати остатак дељења.
    • Користећи такав калкулатор у нашем примеру, можемо видети да 3/100 има остатак од 1. Дакле, 3 (мод 100) је 1.
  4. Ако ово израчунамо ручно, користимо експонент као кратки формат. Ако немате калкулатор са функцијом модула, користите запис са експонентом да бисте олакшали поступак одређивања остатка. Види доле:
    • У нашем примеру израчунавамо 3 са модулом 100. 3 је врло, врло велик број - 515.377.520.732.011.331.036.461.129.765.621.272.702.107.522.001 - толико велик да са њим постаје веома тешко радити. Уместо да користимо 48-цифрени одговор за 3, боље да га напишемо као експонент, па (((((((3)*3))))*3)). Запамтите да узимање експонента експонента има за последицу множење експонената ((к) = к).
      • Сада можемо одредити остало. Започните решавањем (((((((3) * 3))))) * * 3)) у унутрашњем скупу заграда и извуците се, делећи сваки корак са 100. Једном када пронађемо остатак, користићемо то за следећи корак, а не стварни одговор. Види доле:
        • (((((((9) * 3)))) * * 3)) - 9/100 нема остатак, па можемо да наставимо.
        • ((((((27)))) * * 3)) - 27/100 нема остатак, па можемо ићи даље.
        • (((((729))) * 3)) - 729/100 = 7 Р 29. Наш остатак је 29. Настављамо са следећим кораком, а не 729.
        • ((((29=841)) * 3)) - 841/100 = 8 Р 41. У наредном кораку поново користимо наш остатак 41.
        • (((41 = 1681) * 3)) - 1681/100 = 16 Р 81. Наш остатак 81 користимо у следећем кораку.
        • ((81*3 = 243)) - 243/100 = 2 Р 43. Користићемо остатак 43 у следећем кораку.
        • (43 = 1849) - 1849/100 = 18 Р 49. Користићемо наш остатак 49 у следећем кораку.
        • 49 = 2401 - 2401/100 = 24 Р 1. наш коначни остатак је 1. Другим речима, 3 (мод 100) = 1. Имајте на уму да је ово исти одговор као што смо израчунали у претходном кораку!
  5. Сазнајте да ли а (мод н) = а (мод н). Ако није, н је сложено. Ако је тачно, онда н вероватно, (али нисам сигуран) прост број. Понављање теста са различитим вредностима за а може учинити исход сигурнијим, али постоје ретки композитни бројеви који задовољавају Ферматову теорему за све вредности а. Они се називају Кармихаеловим бројевима - најмањи од ових бројева је 561.
    • У нашем примеру, 3 (мод 100) = 1 и 3 (мод 100) = 3,1 = 3, па можемо рећи да је 100 композитни број.
  6. Користите Цармицхаел бројеве да бисте били сигурни у свој исход. Знање који бројеви се подударају са Цармицхаеловом серијом пре него што наставите може вам уштедети много бриге око тога да ли је неки број прост. Генерално, Кармихаелови бројеви су производ појединачних простих бројева, где за све просте бројеве важи да ако је п делилац н, онда је и п-1 делитељ н-1. Мрежна листа Кармихаелових бројева може бити врло корисна за одређивање да ли је неки број прост, користећи Ферматову малу теорему.

Метод 3 од 4: Коришћење Миллер-Рабин теста

Миллер-Рабин тест функционише на исти начин као Ферматова мала теорема, али се боље бави нестандардним бројевима као што су Цармицхаел бројеви.


  1. Претпоставимо н је непаран број који желимо да тестирамо на примарност. Као и у горе наведеним методама, н је променљива чија желимо да одредимо примарност.
  2. Притисак н-1 у облику 2 × д на којој д је чудно. Број н је прост ако је непаран. Дакле, н - 1 мора бити паран. Пошто је н - 1 паран, може се записати као степен 2 пута непаран број. Дакле, 4 = 2 × 1; 80 = 2 × 5; и тако даље.
    • Претпоставимо да желимо да утврдимо да ли је н = 321 прост. 321 - 1 = 320, што можемо изразити као 2 × 5.
      • У овом случају је погодан број н = 321. Одређивање н - 1 за н = 371 може захтевати велику вредност за д, чинећи цео процес тежим у каснијој фази. 371 - 1 = 370 = 2 × 185
  3. Изаберите било који број а између 2 и н-1. Тачан број који сте изабрали није важан - само да мора бити мањи од н и већи од 1.
    • У нашем примеру са н = 321, бирамо а = 100.
  4. израчунати а (мод н). Ако а = 1 или -1 (мод н), а затим пролази н Миллер-Рабин тест и је вероватно прост број. Као и код Ферматове мале теореме, и овај тест не може са апсолутном сигурношћу утврдити прималност броја, али захтева додатна испитивања.
    • У нашем примеру са н = 321, а (мод н) = 100 (мод 321). 100 = 10 000 000 000 (мод 321) = 313. Користимо посебан калкулатор или скраћеницу са експонентом као што је раније описано, да бисмо пронашли остатак од 100/321.
      • Пошто нисмо добили 1 или -1, не можемо са сигурношћу рећи да је н прост. Али још треба да урадимо још - читајте даље.
  5. С обзиром да резултат није једнак 1 или -1, израчунајте а, а, ... и тако даље, до ад. Израчунајте повишено на степен д пута, до 2. Ако је било који од ових једнак 1 или -1 (мод н), а затим пролази н тестовима Миллер-Рабин-а и вероватно је главни. Ако сте утврдили да н пролази тест, проверите свој одговор (погледајте корак испод). Ако н не успе на било ком од ових тестова, то је један састављен број.
    • Подсећања ради, у нашем примеру вредност а је 100, вредност с је 6, а д је 5. Настављамо тестирање као што је приказано у наставку:
      • 100 = 1 × 10.
        • 1 × 10 (мод 321) = 64,64 ≠’ 1 или -1. Наставите мирно.
      • 100 = 1 × 10.
        • 1 × 10 (мод 321) = 244,244 1 или -1.
      • У овом тренутку можемо да станемо. с - 1 = 6 - 1 = 5. Сада смо достигли 4д = 2 и нема моћи 2 пута д испод 5д. Будући да ниједан наш прорачун није одговорио на 1 или -1, можемо рећи да је н = 321 састављен број је.
  6. Ако н положи Миллер-Рабин тест, поновите за остале вредности од а. Ако сте утврдили да вредност н може бити проста, покушајте поново са другом, случајном вредношћу за а да бисте потврдили резултат теста. Ако је н стварно просто, то ће бити тачно за било коју вредност а. Ако је н сложени број, неће успети за три четвртине вредности а. То вам даје већу сигурност од Фермаове мале теореме, где су одређене композитни бројеви (Кармихаелови бројеви) пролазе тест за било коју вредност а.

Метод 4 од 4: Коришћење кинеске теореме о остатку

  1. Изаберите два броја. Један од бројева није прост, а други број који се испитује на прималност.
    • „Тест Нумбер1“ = 35
    • Број теста2 = 97
  2. Изаберите две тачке података веће од нуле, односно мање од ТестНумбер1 и ТестНумбер2. Не могу бити једнаки међу собом.
    • Подаци1 = 1
    • Подаци2 = 2
  3. Израчунајте ММИ (Математички мултипликативни инверзни) за тест број 1 и тест број 2
    • Израчунајте ММИ
      • ММИ1 = Тест Нумбер2 ^ -1 Мод Тест Нумбер1
      • ММИ2 = Тест Нумбер1 ^ -1 Мод Тест Нумбер2
    • Само за просте бројеве (исход ће бити за не-просте бројеве, али то није ММИ):
      • ММИ1 = (ТестНумбер2 ^ (ТестНумбер1-2))% ТестНумбер1
      • ММИ2 = (ТестНумбер1 ^ (ТестНумбер-2))% ТестНумбер2
    • Тако:
      • ММИ1 = (97 ^ 33)% 35
      • ММИ2 = (35 ^ 95)% 97
  4. Направите бинарну табелу за сваки ММИ до Лог2 модула
    • За ММИ1
      • Ф (1) = Број теста2% Број теста1 = 97% 35 = 27
      • Ф (2) = Ф (1) * Ф (1)% Број теста1 = 27 * 27% 35 = 29
      • Ф (4) = Ф (2) * Ф (2)% Број теста1 = 29 * 29% 35 = 1
      • Ф (8) = Ф (4) * Ф (4)% Број теста1 = 1 * 1% 35 = 1
      • Ф (16) = Ф (8) * Ф (8)% Број теста1 = 1 * 1% 35 = 1
      • Ф (32) = Ф (16) * Ф (16)% Број теста1 = 1 * 1% 35 = 1
    • Израчунајте бинарни логаритам ТестНумбер1 - 2
      • 35 -2 = 33 (10001) основа 2
      • ММИ1 = Ф (33) = Ф (32) * Ф (1) мод 35
      • ММИ1 = Ф (33) = 1 * 27 Мод 35
      • ММИ1 = 27
    • За ММИ2
      • Ф (1) = Број теста1% Број теста2 = 35% 97 = 35
      • Ф (2) = Ф (1) * Ф (1)% Број теста2 = 35 * 35 мод 97 = 61
      • Ф (4) = Ф (2) * Ф (2)% Број теста2 = 61 * 61 мод 97 = 35
      • Ф (8) = Ф (4) * Ф (4)% Број теста2 = 35 * 35 мод 97 = 61
      • Ф (16) = Ф (8) * Ф (8)% Број теста2 = 61 * 61 мод 97 = 35
      • Ф (32) = Ф (16) * Ф (16)% Број теста2 = 35 * 35 мод 97 = 61
      • Ф (64) = Ф (32) * Ф (32)% Број теста2 = 61 * 61 мод 97 = 35
      • Ф (128) = Ф (64) * Ф (64)% Број теста2 = 35 * 35 мод 97 = 61
    • Израчунајте бинарни логаритам ТестНумбер2 - 2
      • 97 - 2 = 95 = (1011111) основа 2
      • ММИ2 = ((((((Ф (64) * Ф (16)% 97) * Ф (8)% 97) * Ф (4)% 97) * Ф (2)% 97) * Ф (1)% 97)
      • ММИ2 = ((((((35 * 35)% 97) * 61)% 97) * 35% 97) * 61% 97) * 35% 97)
      • ММИ2 = 61
  5. Израчунај (Дата1 * ТестНумбер2 * ММИ1 + Дата2 * ТестНумбер1 * ММИ2)% (ТестНумбер1 * ТестНумбер)
    • Одговор = (1 * 97 * 27 + 2 * 35 * 61)% (97 * 35)
    • Одговор = (2619 + 4270)% 3395
    • Одговор = 99
  6. Проверите да „ТестНумбер1“ није прост1
    • Израчунај (одговор - податак1)% броја теста1
    • 99 -1 % 35 = 28
    • Пошто је 28 веће од 0, 35 није просто
  7. Проверите да ли је ТестНумбер2 прост
    • Израчунај (одговор - податак2)% броја теста2
    • 99 - 2 % 97 = 0
    • Пошто је 0 једнако 0, 97 је потенцијални прости број
  8. Поновите кораке од 1 до 7 још најмање два пута.
    • Ако је корак 7 једнак 0:
      • Користите други "ТестНумбер1" ако ТестНумбер1 није прост.
      • Користите други ТестНумбер1 где је ТестНумбер1 заправо прост. У овом случају, кораци 6 и 7 једнаки су 0.
      • Користите различите тачке података за дата1 и дата2.
    • Ако је корак 7 увек једнак 0, онда је вероватноћа да је број 2 прост број веома велика.
    • Познато је да су кораци од 1 до 7 нетачни у одређеним случајевима када први број није прост, а други главни фактор небројног броја „Тест Нумбер1“. Ради у свим сценаријима где су оба броја проста.
    • Разлог због којег се кораци од 1 до 7 понављају је тај што постоји неколико сценарија у којима, чак и ако ТестНумбер1 није прост, а ТестНумбер2 није прост, било који број из корака 7 и даље остаје нула. Ови услови су ретки. Променом ТестНумбер1 у други не-прости број, ако ТестНумбер2 није прост, ТестНумбер2 више неће бити једнак нули, у кораку 7. Осим у случају када је "ТестНумбер1" фактор ТестНумбер2, прости бројеви ће увек бити нула. корак 7.

Савети

  • 168 основних бројева испод 1000 су: 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, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997
  • Када је покушај дељења спорији од софистициранијих метода, и даље је ефикасан за мање бројеве. Чак и приликом тестирања већих бројева, није ретко прво проверити мале бројеве пре преласка на напредније методе.

Неопходности

  • Папир, оловка, оловка и / или калкулатор за вежбање