问题描述 :
判断一个数是不是素数
输入说明 :
第一行为N
下面N行,每行一个数字n
输出说明 :
判断n是不是素数,是就输出yes,否则输出no
输入范例 :
3
897
23
97
输出范例 :
no
yes
yes
完整C++代码
素数就是只能被1和它本身整除的数,所以直接从2到n-1遍历整除就OK
当然这是最通俗易懂的方法,但不是最简单的,这里只讲最简单能做出题目来的方法,进阶版可以去了解一下【埃氏筛法】
#include <bits/stdc++.h>
using namespace std;
int main()
{
int N;
cin >> N;
while (N--) {
int num;
cin >> num;
bool flag = true;
for (int i = 2; i < num; i++) {
if (num % i == 0) {
cout << "no" << endl;
flag = false;
break;
}
}
if (flag) {
cout << "yes" << endl;
}
}
return 0;
}