Project Euler task 97

The first known prime found to exceed one million digits was discovered in 1999, and is a Mersenne prime of the form 26972593−1; it contains exactly 2,098,960 digits. Subsequently other Mersenne primes, of the form 2p−1, have been found which contain more digits.

However, in 2004 there was found a massive non-Mersenne prime which contains 2,357,207 digits: 28433×27830457+1.

Find the last ten digits of this prime number.

--------------------------------------------------------

#include < iostream >

using namespace std;


int main() {
unsigned long long int iNum = 2;

for (unsigned long long int i = 2; i <= 7830457; i++) {
iNum *= 2;
if (iNum > 10000000000)
iNum -= 10000000000;
}

iNum *= 28433;
iNum += 1;

cout << iNum << endl;

return 0;
}

Comments

Popular Posts