试除法判断质数
#include<bits/stdc++.h>
using namespace std;
int a[110];
bool prime(int x)//一个数的因子,必然是一个大于x^0.5 和一个小于x^0.5,所以说我只需要判断小于的那部分
{
if (x < 2) return false;
for (int i = 2 ; i <= x / i ; i ++) //这里用 i <= x / i 而不是 i*i <= x 是因为i*i可能溢出
if (x % i == 0) return false;
return true;
}
int main()
{
int n;
cin>>n;
while (n --)
{
int x ;
cin>>x;
if (prime(x)) puts("Yes");
else puts("No");
}
return 0;
}