九度OJ—题目1047:素数判定

来源:互联网 发布:金凤凰软件 编辑:程序博客网 时间:2024/06/05 08:44
题目描述:

给定一个数n,要求判断其是否为素数(0,1,负数都是非素数)。

输入:

测试数据有多组,每组输入一个数n。

输出:

对于每组输入,若是素数则输出yes,否则输入no。

样例输入:
13
样例输出:
yes
来源:
2009年哈尔滨工业大学计算机研究生机试真题
答疑:

解题遇到问题?分享解题心得?讨论本题请访问:http://t.jobdu.com/thread-7771-1-1.html


#include<iostream>#include<math.h>using namespace std; int isprime(int x){    int n=(int)sqrt(x),i;    for(i=2;i<=n;i++)        if(x%i==0)break;       if(i>n)         return 1;    else        return 0;} int main(){    int k;    while(cin>>k)    {        if(k==0||k==1||k<0)            cout<<"no"<<endl;        else if(isprime(k))            cout<<"yes"<<endl;        else            cout<<"no"<<endl;    }    return 0;}/**************************************************************    Problem: 1047    User: vhreal    Language: C++    Result: Accepted    Time:0 ms    Memory:1532 kb****************************************************************/


0 0
原创粉丝点击