L1_028(判断素数)

本题的目标很简单,就是判断一个给定的正整数是否素数。


输入格式:
输入在第一行给出一个正整数N(<=10),随后N行,每行给出一个小于231的需要判断的正整数。
输出格式:
对每个需要判断的正整数,如果它是素数,则在一行中输出“Yes”,否则输出“No”。


输入样例:
2
11
111
输出样例:
Yes
No


#include <iostream>
#include <math.h>
using namespace std;
int main()
{
    int n;//2^31 int是够的
    cin>>n;
    for(int i=1;i<=n;++i)
    {
        if(i>1)
            cout<<endl;
        int num;
        cin>>num;
        int sq=sqrt(num);
        int flag=0;
        for(int i=2;i<=sq;++i)
        {
            if(num%i==0){
                flag=1;
                cout<<"No";
                break;//不要漏掉这个!!
            }
        }
        if(num==1){//1不是素数,不要漏掉这个情况!!
            flag=1;
            cout<<"No";
        }
        if(!flag)
            cout<<"Yes";
    }
    return 0;
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容