我们先了解一下什么是质数?
①只有1和它本身两个因数的数叫做质数。
②除了1和它本身两个因数,还有其他因数的数叫做合数。
③1既不是质数也不是合数。
开始写代码了,我们可以用for循环来求出因数个数,然后再判断是否质数(因数个数是2的是质数,因数个数大于2的都是合数)
代码有注释,不懂得可以评论区提问。
代码如下:
#include
using namespace std;
int main()
{
int n,cnt=0;
cout << "请输入数字:" << endl;
cin>>n;
for(int i=1;i<=n;i++) //从2开始循环,循环到n/2。
{
if(n%i==0) //判断i是否为n的因数
{
cnt++; //加入因数个数。
}
}
if(cnt==2)
cout<<"质数,因数共2个。"; //因数只有1和它本身
else if(cnt>2)
cout<< "合数,因数共"< else
cout << "既不是质数,也不是合数。因数共"<return 0;
}
代码截图↓↓↓
第一次发帖,希望你们喜欢,谢谢阅读。


举报 0