2016-04-23 4 views
0

Je veux identifier très grand nombre premier en utilisant le logiciel R,Comment identifier les grands nombres premiers dans R?

> options(max.print=10^9) 
> isPrime(768969862856745523) 
Error: cannot allocate vector of size 3.3 Gb 

Mais je n'ai pas le numéro ci-dessus lui-même ... S'il vous plaît essayer de me aider à résoudre le problème

Répondre

1
library(gmp)  
x <- as.bigz("768969862856745523") 
isprime(x) 
[1] 1 

Alors , x est probablement premier. Vous pouvez vérifier en utilisant ma fonction all_divisors définie here

all_divisors(x) 

Big Integer ('bigz') object of length 2: 
[1] 1     768969862856745523 
+0

Je sais que le numéro ci-dessous était de 50 chiffres nombre premier, mais si j'utilise la commande ci-dessus x <-as.bigz (« 22953686867719691230002707821868552601124472329079 ») puis isprime (x) Je reçois [1] 1 mais la réponse est fausse. – aarthi

+0

1 signifie "est probablement premier". C'est pourquoi j'utilise all_divisors. (qui d'ailleurs me montre que votre numéro à 50 chiffres EST premier) –

+0

Je le sais mais j'attends 2 (sûrement prime) car je sais que ce nombre est premier – aarthi