题目描述
判定输入的数是不是质数。
输入格式第一行输入一个整数 t ,1<=t<=1.5*10^4接下来 t 行,一行一个数 x
输出格式对于输入的每一个 x,如果 x 是质数输出一行 Y,否则输出一行 N。
样例输入 #1
5
1
2
6
9
100003
输出 #1
N
Y
N
N
Y
数据范围与提示
1≤x≤10^6。
分类标签[枚举]
C++题解代码
#include <bits/stdc++.h>
using namespace std;
int n;
int a;
int g;
bool b;
// The main procedure
int main() {
cin>>n;
for (int i = 1; i <= n; i++) {
cin>>a;
if (a == 1) {
b = false;
} else {
b = true;
g = sqrt(a);
for (int j = 2; j <= g; j++) {
if ((a%j) == 0) {
b = false;
break;
}
}
}
if (b) {
cout<<"Y";
} else {
cout<<"N";
}
if (i < n) {
cout<<'\n';
}
}
return 0;
}
Blockly题解代码图片