如何判断一个数为素数
2个回答
展开全部
要判断一个数字是否为素数,可以按照下面的步骤操作:
1、检查该数字的结尾数字,如果这个数字是以0、2、4、6和8结尾,则它不是素数。
2、取该数字各位上的数字之和,如果这个数字之和能被3整除,则该数不是素数。
3、如果步骤1和2都不能确定数字是不是素数,那就可以求该数字的平方根;如果这个数字能够被任何一个小于其平方根的素数整除,则这个数字就不是素数,否则它就是素数。
素数又叫做质素,指的是大于1且不能被1和自身以外的任何其他数整除的数字,如果一个数字可以被其他数字整除,那它就不是素数,称为合数。所以素数必须要是大于1的整数,因此0和1不被视为素数,任何小于0的数字也不是素数,数字2是第一个素数,因为它只能被它自己和数字1整除。
关于素数的冷知识:
2是唯一的偶数素数,其他的所有素数都是奇数;
2和3是仅有的两个连续的素数;
所有大于2的偶数都可以表示为两个素数之和。
展开全部
#include <iostream>
using namespace std;
bool IsPrime(int n)
{
if(n <= 1){
cout<<n<<"不是素数"<<endl;
return false;
}
for (int i = 2; i < n; i++)
{
if ((n % i) == 0){
cout<<n<<"不是素数"<<endl;
return false;
}
}
cout<<n<<"是素数"<<endl;
return true;
}
int main() {
int a = 2, b = 17, c = 18;
IsPrime(a);
IsPrime(b);
IsPrime(c);
return 0;
}
using namespace std;
bool IsPrime(int n)
{
if(n <= 1){
cout<<n<<"不是素数"<<endl;
return false;
}
for (int i = 2; i < n; i++)
{
if ((n % i) == 0){
cout<<n<<"不是素数"<<endl;
return false;
}
}
cout<<n<<"是素数"<<endl;
return true;
}
int main() {
int a = 2, b = 17, c = 18;
IsPrime(a);
IsPrime(b);
IsPrime(c);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询