求范围内的最大孪生素数

时间:2017-09-28 04:52:10
【文件属性】:

文件名称:求范围内的最大孪生素数

文件大小:755B

文件格式:CPP

更新时间:2017-09-28 04:52:10

最大孪生素数

分离奇数和偶数的优化求法 #include #include #include //is_prime函数用来判断输入的数x是否是素数 int is_prime(int n) { if (n <= 1) return 0; if (n == 2) return 1; // 所有偶数都不是素数 if (n%2 == 0) return 0; // 只需要检查奇数 /* m不必被2~m-1之间的每一个整数去除,只需被2~√m之间的每一个整数去除就可以了。 如果m不能被2~√m间任一整数整除,m必定是素数。 */ for (int i = 3; i * i <= n; i += 2) if (n%i == 0) return 0; return 1; } int main() { int i, m; printf("Please input a number:"); scanf("%d", &m); for(i = m - 2; i >= 3; i--) { if(is_prime(i) && is_prime(i+2)) { printf("最大孪生素数为:%d %d\n", i, i+2); break; } } system("pause"); return 0; }


网友评论