- 问题描述
判断一个数是不是素数 - 输入说明
第一行为N
下面N行,每行一个数字n
- 输出说明
判断n是不是素数,是就输出yes,否则输出no - 输入范例
cpp
3
897
23
97
- 输出范例
cpp
no
yes
yes
感想:
代码如下:
cpp
#include <iostream>
#include <vector>
#include <iomanip>
#include <unordered_map>
using namespace std;
bool is_prime(int n) {
if(n<2) return false;
for(int i = 2; i*i<=n; ++i) {
if(n%i == 0)
return false;
}
return true;
}
int main() {
int n;
cin>>n;
int input;
for(int i = 0; i<n; ++i) {
cin>>input;
if(is_prime(input))
cout<<"yes"<<endl;
else
cout<<"no"<<endl;
}
return 0;
}