mm bueno miren mi codigo esta basado en el metodo de Sieve mm bueno pues funciona algo asi:
un codigo en python que usa su metodo es este:
Código PHP:
def primeSieve(upperBound):
"""
Returns a list of all prime numbers less than upperBound.
"""
numbers = range(2, upperBound)
primes = []
while numbers:
prime = numbers.pop(0)
primes.append(prime)
numbers = [n for n in numbers if n % prime]
return primes
mm bueno esta teoria:
mmm el codigo que puso vitoya me sirvio mucho como guia por asi decirlo pero tenia errores mm me ayudo dibujar el problema =) primero lo hice en papel y lo pase a visual basic pero tube unos problemitas asi que lo pase a lo mas parecido casi sin manipular nada solo agregando un par de cositas.... vbs...
Código PHP:
Dim a(100000)
d=Round(Sqr(100000))
For z=2 To d
While a(z)=True
z=z + 1
Wend
i=z * 2
While a(i)=True
i=i+z
Wend
Next
e="2718281828459045235360287471352662497757247093699959574966967627724076630353547594571382178525166427427466391932003059921817413596629043572900334295260595630738132328627943490763233829880753195251019011573834187930702154089149934884167509244761460668082264800168477411853742345442437107539077744992069551702761838606261331384583000752044933826560297606737113200709328709127443747047230696977209310141692836819025515108657463772111252389784425056953696770785449969967946864454905987931636889230098793"
For z=1 To Len(e)-9
rpta=Mid(e,z,10)
valida=True
For i=2 To 100000
If a(i)=False Then
d=CDbl(rpta)/CDbl(i)
If d=Round(d) Then
valida=False
Exit For
End If
End If
Next
If valida=True Then
MsgBox rpta
WScript.Quit
End If
Next
mm bueno el numero que me sale es "7427466391" mm probe poniendo
Dedicated Server Hosting | VPS | Domains | Webhosting | Private Racks by LeaseWeb pero no existe :S mm bueno diganme si esta bien mm por sierto recibi un poco de ayuda en la logica matematica por nitrokill el esta aqui en el foro xD...
Saludos
Dedalo(Dédalo)
EDIT: al principio fue un poco frustrante por que lo intente en tres lenguajes aparte de visual basic xD