Frage zu Script aufgabe

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Frage zu Script aufgabe
tag

also ich arbeite grad das Algo script durch (man solls kaum glauben :slight_smile: )

ich hab da nun ein kleines problem mit der aufgabe der primzahlen “berechnung” (a.1.04 , folie 12)

also das scheme programm versteh ich schon , nur wieso

wird bei t² > n (> (square test-divisor) n)
der prozess abgebrochen? und angenommen das n primzahl ist?
warum soll es darüber keine teiler mehr geben?

danke für die antwort

Drager


Die Antwort auf Deine Frage steht im Skript selbst! :smiley:
Es besagt nämlich auf Folie 11 des Kapitels in Punkt 4, dass wenn n KEINE Primzahl ist, dann hat es einen
Teiler<=(sqrt n).
Also kann man den Test getrost abbrechen wenn er bis (sqrt n) keinen Teiler gefunden hat (primzahl, Juche!!), und wenn t Dein testdivisor ist dann hast du (sqrt n) überschritten sobald (square t)>n ist.

oder? :-p


ja , dass steht da , aber wieso ist das so?

da steht zwar auch eine “erklärung” :

" d teilt n, so auch d/n teilt n;
entweder d oder n/d < (sqrt n)"

und was soll das beweisen??

naja soo wichtig ist das dann auch wieder net…
falls trotzdem jemand weiter weiss…

mfg

Drager


Es gebe zu einer Zahl n eine Zahl d, die n teilt. also muss es auch ein a geben das diese Zahl teilt: d * a = n.

Angenommen d > sqrt(n), dann muss a < sqrt(n), da sonst d*a>n

D.h. wenn du schon weisst, das zwischen 1 und sqrt(n) keine Primzahl liegt, liegt auch keine darüber.

PS sqrt(n) wird immer aufgerundet