Cho dãy gồm n số nguyên (n<=250). Tìm và in ra màn hình những số là số nguyên tố trong dãy trên? code c++ nha mik cần gấp mn giúp mik vs
2 câu trả lời
//code for jakkaa
#include <bits/stdc++.h>
#define ll long long
using namespace std;
ll n, a[255];
bool check(ll x)
{
for(int i=2; i<=sqrt(x); i++)
if(x%i==0) return false;
return (x>1);
}
int main()
{
cin>>n;
for(int i=1; i<=n; i++)
cin>>a[i];
for(int i=1; i<=n; i++)
if(check(a[i])==1) cout<<a[i]<<"\n"; // bn cx có thể ghi cout<<a[i]<<" "; tùy theo đề nhé
}
Giải thích:
Vì đề đay yêu cầu là số nguyên tố, nên ta phải sd hàm nto để ktra:
bool check(ll x)
{
for(int i=2; i<=sqrt(x); i++)
if(x%i==0) return false;
return (x>1);
}
rồi sau đó ta nhập n, mảng
rồi ta ktra coi trong các dãy số đó, có số nào là số nto ko?
r in ra.
Submit mẫu để bn test:
7
4 8 6 2 5 7 3
Nếu đúng thì nó sẽ in ra kết quả ntn: 2 5 7 3
hoặc ntn: 2
5
7
3
Nếu bn thấy câu trả lời của mik hay và có ích, thì cho mik xin 5sao+cảm ơn và câu trả lời hay nhất nhé
#include <iostream>
using namespace std;
bool 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,a[1001]; cin >> n;
for(int i = 0; i < n; ++i) cin >> a[i];
for(int i = 0; i < n; ++i) {
if(prime(a[i]))
cout << a[i] << ' ';
}
}