2010年7月30日 星期五

高中 a007: 判斷質數



想看題目請點我

#include <iostream>
#include <math.h>
using namespace std;

int main (){
    int x , a , i ;
    while(cin >> x)
    {
        a=int(sqrt(double(x)));
        for(i=2;i<=a;i++)
        {
            if(int(x)%int(i)==0)
            {
                cout << "非質數" << endl;
                break;
            }
        }
        if(i>a)
        {
            cout << "質數" << endl;
        }
    }
}


質數的定義:
    除了1之外的自然數只能被1或自己整除的數

作法:
    要判斷是不是質數 ,
    先開根號取整數 ,
    之後暴力破解他 !!!

這題筆者很懶 =_=
直接上網拜賜google大神給予的答案