8 svar
129 visningar
JnGn 280 – Fd. Medlem
Postad: 20 nov 2018 14:26

primtalsdelare

Hej

jag har en uppgift där man ska ta fram den minsta primtalsdelaren och jag är inte riktigt med på vilken metod man ska använda sig av.

Uppgiften är:

Hitta det minsta primtalsdelaren till heltalen 217-1 och 229-1

Ska man börja med att sätta 2171modn och sedan ska man ta reda på vad värdet på n är? men jag förstår inte hur man ska göra för att ta fram värdet på n?

SeriousCephalopod 2696
Postad: 20 nov 2018 14:41 Redigerad: 20 nov 2018 14:41

Båda talen är potentiella mersenneprimtal så möjligt att man kan googla lite på metoder för att avgöra om tal är meresenneprimtal eller om de inte är det metoder för att faktorisera dem. 

Inga av talen går att faktorisera genom brute-force.

Såvida ni inte explicit jobbar med algoritmer för att avgöra om tal är meresenneprimtal eller ej så skulle jag nöja mig med att det är tabulerat att dessa två tal är mersenneprimtal (och såldes primtal) och därmed att de största primtalsdelarna är talen själva. 

joculator 5289 – F.d. Moderator
Postad: 20 nov 2018 14:49 Redigerad: 20 nov 2018 14:54

229-1 är inte ett mersenneprimtal.

Edit: det är inte ens ett primtal ...
233x1103x2089 = 536870911 = 2^29 - 1

men det var ju inte det du frågade om

SeriousCephalopod 2696
Postad: 20 nov 2018 15:07

Hmm, yes läste av tabellen fel. Ja, då går de nog att brute-forca med en for-loop helt enkellt. 

Tendo 158
Postad: 20 nov 2018 15:37 Redigerad: 20 nov 2018 15:38

kan man inte använda fermats lilla sats:

Om p är ett primtal så gäller

a^p ≡ a (mod p)

JnGn 280 – Fd. Medlem
Postad: 20 nov 2018 15:53

jag såg en lösning på problemet som var att man sätter 229-1 som q=58k+1 och att k=4 vilket ger 233, men jag förstår inte hur man kommer fram till q=58k+1 eller att k=4, svaret stämmer dock.

SvanteR 2746
Postad: 20 nov 2018 17:45

Det där ser ju ut som en ledtråd som utelämnar allt det svåra!

Fermats lilla sats ger ju att 229-1-129 måste vara ett heltal, om vi kallar det heltalet k så gäller:

229-1-129=k228-1=29k229-2=58k229-1=58k+1

Men jag har ingen aning om hur det ska hjälpa till med att hitta primtalsdelare!

SvanteR 2746
Postad: 20 nov 2018 18:11

Har lite brått nu, men jag tror du hittar fortsättningen här (sats 3):

https://en.wikipedia.org/wiki/Mersenne_prime#Theorems_about_Mersenne_numbers

JnGn 280 – Fd. Medlem
Postad: 20 nov 2018 18:37

okej då har vi att eftersom q är en faktor av 2p-1 så q1mod2p och p är 29 så då får vi q1mod58 och detta kan vi skriva som q=58k+1 så då är vi en bit påväg men hur ska man få fram att k=4? 

Svara
Close