使用c++判断素数,c++如何判断一个数字是否为素数?判断素数的方法有很多,以下是其中的一中方法,实例源码如下:
#include<iostream.h>
int prime(int n);
void main()
{
int n;
cout<<"请输入一个整数"<<endl;
cin>>n;
if (prime(n))
cout<<"是素数"<<endl;
else
cout<<"不是素数"<<endl;
}
int prime(int n)
{
for (int i=2;i<n/2+1;i++)
if (n%i==0)
{
return false;
break;
}
return true;
prime函数的回调不太懂?请看下面的解析:
上面程序解析:
你回想下数学上素数是什么意思:
只能被1和他本身整除
int prime(int n)
{
//这个就是通过i枚举从2 到 n/2的所以数
for (int i=2;i<n/2+1;i++)
//n%i,看是否有一个数能整除该数
if (n%i==0)
{
//假如有的话就返回个false说明这个数不是素数
return false;
break;
}
//枚举了所有数都没有数能够整除该数,说明该数是素数,返回true
return true;
}
for (int i=2;i<n/2+1;i++)
if (n%i==0)