Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЗахКриптология курс лекций 2 - копия.docx
Скачиваний:
5
Добавлен:
24.09.2019
Размер:
5.15 Mб
Скачать

7.Б.Увеличитьсчетчикpна2.Перейтикпункту7.

8.Выводпростыхчисел,задаваемыхячейкамивектора,вкоторыхзначенияненулевые.

8.а.Выводчисла2.

8.б.Дляt0,size1:еслиV[t]≠0,товыводимчисло2?t+3.

9.Выход.

Примерработывышеописанногоалгоритма.

Найдеммножествопростыхчиселдочислаn=41включительноспомощьюмодифицированного"решетаЭратосфена".

Размерячееквектораавенsize=(n-1)/2=20.

Шагиработыалгоритмапредставленывтрассировочнойтабл.1.3.

Таблица1.3.Трассировочнаятаблица

Шаг,p

pn?

V[(p-3)/2]0

Шаг,t

tn?

V[(t-3)/2]0

t=t+2?p

p=p+2

3

да:3≤6

Да:V[0]≠0

9

да:9≤41

да:V[3]≠0

15←9+2×3

15

да:15≤41

да:V[6]≠0

21←15+2×3

21

да:21≤41

да:V[9]≠0

27←21+2×3

27

да:27≤41

да:V[12]≠0

33←27+2×3

33

да:33≤41

да:V[15]≠0

39←33+2×3

39

да:39≤41

да:V[18]≠0

45←39+2×3

нет:45>41

5←3+2

5

да:5≤6

Да:V[1]≠0

25

да:25≤41

да:V[11]≠0

35←25+2×5

35

да:35≤41

да:V[16]≠0

45←35+2×5

нет:45>41

7←5+2

7

нет:

7>6

Привыписываниирезультатовполучаемследующийрядпростых

чисел:

3 5 7 11 13 17 19 23 29 31 37 41.

Вопросыдлясамопроверки.

1.ДлячегопредназначенорешетоЭратосфена?

2.Пояснитеработуалгоритма"решетоЭратосфена".

3.КакиеизмененияпроисходятвмодификациирешетаЭратосфена?

4.ДокакойграницыпроизводитсяпроверкачислаnнапростотувмодифицированномрешетеЭратосфена?

5.ПояснитеработумодифицированногорешетаЭратосфена.

6.КакимиособенностямиобладаетмодифицированноерешетоЭратосфена?

7.Какимиограничениямипоиспользованиюобладаетмодифицированноерешето

Эратосфена?

8.Какиеограничениянакладываютсянавходныезначенияалгоритма?

9.ДлячегонуженвекторV?

ПроверкапростотычиселМерсенна

ЧисламиМерсеннаназываютсячиславидаМ(p)=2p-1,pN.

ЗадачадлячиселМерсенна-поискврядуэтихчиселпростых.

Мерсеннрассматривалзначенияфункции2p-1толькоприпростыхp.Действительно,еслиp-составное,тотакоежеиМ(p).Предположим,чтоp=r?s,1<rиs<p,тогда

М(p)=2p-1=2rs-1=(2r-l)(2r(s-1)+2r(s-2)+...+2r+1).

Следовательно,еслиrделитp,тоиМ(r)делитМ(p).

Втожевремя,еслиp-простое,тоМ(p)необязательноявляетсяпростым.Например,дляпростогочислаp=11числоМерсеннаМ(p)=211−1=2047=23×89получаетсясоставным.

Определенследующийряд(началоряда)простыхчиселМерсенна

абл.1.7):

p

ЦифрвM(p)

8

31

10

9

61

19

10

89

27

11

107

33

12

127

39

13

521

314

?

3021377

909526

Таблица1.7.РядпростыхчиселМерсенна

p

ЦифрвM(p)

1

2

1

2

3

1

3

5

2

4

7

3

5

13

4

6

17

6

7

19

6

ПридоказательствепростотычиселМерсенна,Фермаиспользовал

методразложениянамножители.БолееэффективентестЛюка-Лемера.