From 4a57d417c37c2962e32152cd8993524b46c11664 Mon Sep 17 00:00:00 2001 From: Ved Prakash <78460491+Ved142@users.noreply.github.com> Date: Mon, 17 Oct 2022 09:45:34 +0530 Subject: [PATCH] Create Sieve_of_Eratosthenes.cpp Added a Program for finding Prime numbers using Sieve of Eratosthenes. --- Cpp/Sieve_of_Eratosthenes.cpp | 59 +++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 Cpp/Sieve_of_Eratosthenes.cpp diff --git a/Cpp/Sieve_of_Eratosthenes.cpp b/Cpp/Sieve_of_Eratosthenes.cpp new file mode 100644 index 0000000..562c212 --- /dev/null +++ b/Cpp/Sieve_of_Eratosthenes.cpp @@ -0,0 +1,59 @@ +#include +using namespace std; + +// + +vector Prime(3 * 1e6, true); + +void Sieve() +{ + Prime[1] = false; + for (long long i = 2; i * i <= Prime.size(); i++) + { + if (Prime[i] != true) // not prime + continue; + for (long long j = i * i; j < Prime.size(); j += i) + { + Prime[j] = false; + } + } +} + +void solve() +{ + Sieve(); + long long num; + cin >> num; + // 0 1 Format , 0 means not prime , 1 means prime + for (long long i = 2; i <= num; i++) + { + cout << i << " -> " << Prime[i] << "\n"; + } + cout << "\n"; + + // word format + for (long long i = 2; i <= num; i++) + { + if (Prime[i]) + { + cout << " " << i << " is a Prime number.\n"; + } + else if (Prime[i] == 0) + { + cout << " " << i << " is not a Prime number.\n"; + } + } +} + +int main() +{ + ios_base::sync_with_stdio(0); + cin.tie(0); + long long int t; + t = 1; + while (t--) + { + solve(); + } + return 0; +}