#include

1106 质数检测(51NOD基础)

1106 质数检测

基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题
 
给出N个正整数,检测每个数是否为质数。如果是,输出"Yes",否则输出"No"。
Input
第1行:一个数N,表示正整数的数量。(1 <= N <= 1000)
第2 - N + 1行:每行1个数(2 <= S[i] <= 10^9)
Output
输出共N行,每行为 Yes 或 No。
Input示例
5
2
3
4
5
6
Output示例
Yes
Yes
No
Yes
No
#include <cstdio>
#include <cmath>

bool check(int num){
    if(num == 1||num==0)
        return false ; 
    if(num == 2 || num == 3)
        return true ; 
    int len = (int)sqrt(num) + 1 ; 
    for(int i=2 ; i<=len ; i++){
        if(num%i==0){
            return false ; 
        }
    }
    return true ; 
}

int main(){
    int n ; 
    int num1 ; 
    while(~scanf("%d" , &n)){
        for(int i=0 ; i<n ; i++){
            scanf("%d" , &num1) ; 
            if(check(num1)){
                printf("Yes\n") ; 
            } else printf("No\n") ; 
        }
        
    }
    return 0 ; 
} 

 

posted @ 2017-09-20 22:40  0一叶0知秋0  阅读(326)  评论(0编辑  收藏  举报