/* * name: EsPrimo * @param (unsigned long long) * @return (bool)(true == es primo) */ bool EsPrimo(unsigned long long n) { // Declaración de 55 primos para una más rapida comprobación. const unsigned int primes55[] = {2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71, 73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179, 181,191,193,197,199,211,223,227,229,233,239,241,251,257}; for(unsigned int i=0;i<55;i++) { if (n%primes55[i] == 0) { if (n == primes55[i]) { return true; } else { return false; } } } unsigned int maxtest = (long)sqrt(n); // Mas eficiente que x>>4 (x/(2^4)). for(unsigned int i=259; i