Chernick's Carmichael numbers: Difference between revisions

Content added Content deleted
m (→‎{{header|C++}}: added GMP libheader)
m (→‎{{header|C++}}: minor code compression)
Line 84: Line 84:


if (!primality_pretest(12 * m + 1)) {
if (!primality_pretest(12 * m + 1)) {
return false;
}

if (!primality_pretest(18 * m + 1)) {
return false;
return false;
}
}
Line 93: Line 89:
u64 t = 9 * m;
u64 t = 9 * m;


for (int i = 2; i <= n - 2; i++) {
for (int i = 1; i <= n - 2; i++) {
if (!primality_pretest((t << i) + 1)) {
if (!primality_pretest((t << i) + 1)) {
return false;
return false;
Line 107: Line 103:
}
}


if (!probprime(18 * m + 1, z)) {
for (int i = 1; i <= n - 2; i++) {
return false;
}

for (int i = 2; i <= n - 2; i++) {
if (!probprime((t << i) + 1, z)) {
if (!probprime((t << i) + 1, z)) {
return false;
return false;