Nhập vào hai số l và r,in ra các số nguyên tố từ đoạn l đến r bằng sàng số nguyên tố (code c++ đơn giản có dùng hàm thui ạ :3)

2 câu trả lời

#include <bits/stdc++.h>
using namespace std;

int l,r,m,i;

bool f[10000000];
void sangnt(){
 f[0]=f[1]=1;
 for (int i=2; i<=sqrt(m); i++)
  if (!f[i])
   for (int j=i*i; j<=m; j+=i)
    f[j]=1;
}

int main() {
   ios::sync_with_stdio(0);
   cin.tie(0); cout.tie(0);
   cin>>l>>r;
   m=r;
   sangnt();
   for (i=l; i<=r; ++i) 
      if (!f[i]) cout<<i<<" ";
}

#include <bits/stdc++.h>
using namespace std;

int l,r,m,i;

bool f[10000000];
void sangnt(){
 f[0]=f[1]=1;
 for (int i=2; i<=sqrt(m); i++)
  if (!f[i])
   for (int j=i*i; j<=m; j+=i)
    f[j]=1;
}

int main() {
   ios::sync_with_stdio(0);
   cin.tie(0); cout.tie(0);
   cin>>l>>r;
   m=r;
   sangnt();
   for (i=l; i<=r; ++i) 
      if (!f[i]) cout<<i<<" ";
}

Câu hỏi trong lớp Xem thêm