diff --git a/math/prime_numbers.cpp b/math/prime_numbers.cpp new file mode 100644 index 000000000..7264ff528 --- /dev/null +++ b/math/prime_numbers.cpp @@ -0,0 +1,26 @@ +#include +#include + +std::vector primes(int max) { + max++; + std::vector res; + std::vector numbers(max, false); + for (int i = 2; i < max; i++) { + if (!numbers[i]) { + for (int j = i; j < max; j += i) + numbers[j] = true; + res.push_back(i); + } + } + return res; +} + +int main() { + std::cout << "Calculate primes up to:\n>> "; + int n; + std::cin >> n; + std::vector ans = primes(n); + for (int i = 0; i < ans.size(); i++) + std::cout << ans[i] << ' '; + std::cout << std::endl; +}