题目描述
输入 n(n\le100)n(n≤100) 个不大于 100000 的整数。要求全部储存在数组中,去除掉不是质数的数字,依次输出剩余的质数。
输入格式
无
输出格式
无
输入输出样例
输入 #1
5
3 4 5 6 7
输出 #1
3 5 7
题目描述
输入 n(n\le100)n(n≤100) 个不大于 100000 的整数。要求全部储存在数组中,去除掉不是质数的数字,依次输出剩余的质数。
输入格式
无
输出格式
无
输入输出样例
输入 #1
5
3 4 5 6 7
输出 #1
3 5 7
#include <iostream>
#include <cmath>
using namespace std;
bool isPrime(int m) {
if (m == 0 || m == 1)
return false;
for (int i = 2; i <= sqrt(m); ++i)
if (m % i == 0)
return false;
return true;
}
int main() {
int n;
cin >> n;
int *a = new int[n];
for (int i = 0; i < n; ++i)
cin >> a[i];
for (int i = 0; i < n; ++i)
if (isPrime(a[i]))
cout << a[i] << ' ';
cout << endl;
return 0;
}