Hallo,
bei Zahlen ab 20 stellen ist die Siebmethode nicht schnell genug, da muss man dann auf solche "Formelen" zurückgreifen.
Gut dass diese auch Pseudoprimzahlen erkennen ist mir bekannt, dennoch wollte er mir nicht glauben, dass man Primzahlen mit einer Genauigkeit von ~99.999% [1] nur durch dem kleinen Fermat Satz bestimmen kann.
Möglich ist sogar eine Genauigkeit von 1 zu 2^-80
Mit zerlegen bezog ich mich auf folgenedn Post:
link:http://forum.de.selfhtml.org/?t=101529&m=623449]
P.S. Mein Code sieht so aus und ich hab ihn bis Primzahlen von 1 Mio getestet und es funktioniert :)
===========Anfang=========
long long modpow(long long b, long long e, long long m)
{
if(e == 1)
{
return b % m;
}
else
{
unsigned long long r = modpow(b, e / 2, m);
r = (r * r) % m;
if(e % 2 == 0)
{
return r;
}
else
{
return (r * b) % m;
}
}
}
long fermat(long p)
{
long x2;
x2 = modpow(2,p-1,p);
return x2;
}
=============ENDE==========
[1] Bei a=2 gibt es bei Zahlen zwischen 10 und 100.010 genau 78 Pseudoprimzahlen.
MFG
Andavos