题目:使用c++语言用个人思想写如何判断一个数是否是质数
输出格式:yes 或者 no; 输入格式:输入一个任意数字;
个人思路:2是特殊的质数,在做循环除数时,2/2==1没有余数容易造成系统误判,故开局使用if语句将2特例,再用else分离条件。最后使用for循环将n除以从2到n-1的所有数,若这个过程两数相除的过程中余数出现为0,给标志变量加1,循环停止。最后若标志变量没变,说明此数没有被整除,输出Yes,否则就是被整除过,就输出No。
新手,过程复杂,多指教。
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,i,a;
cin>>n;
if(n==2) cout<<"yes"<<endl;
else
{
int flag=0;
for(i=2;i<n;i++)
{
a=n%i;
if(a==0)
{
flag++;
break;
}
}
if(flag==0) cout<<"Yes";
else cout<<"No";
}
return 0;
}