0
点赞
收藏
分享

微信扫一扫

素数判断算法优化—sqrt(x)的循环判断和循环数字的折半

素数判断算法优化—sqrt(x)的循环判断和循环数字的折半_数组素数判断算法优化—sqrt(x)的循环判断和循环数字的折半_数组_02


#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>
int Isprime(int x);
int main()
{
int x;
scanf("%d", &x);
if (Isprime(x))
{
printf("%d is \n", x);
}
else
{
printf("%d is not", x);
}
}

#include<math.h>
//不用数组的方法检验素数:
int Isprime(int x)
{
int ret = 1;
int i;
if (x==​​1||( x%2 ==  ​0 && x!=2))

//此逻辑判断语句含义:1或(偶数(x%2 ==0) 中 除了2(x!=2)之外的数)——都不是素数
ret = 0;
for (i = 2; i < sqrt(x); i++)
//算法:素数中使用i<sqrt(x)来替代x-1代表循环结束
{
if (x % i == 0)
{
ret = 0;
break;
}
}
return ret;
}

举报

相关推荐

0 条评论