TestGitRepo/main.cpp

29 lines
666 B
C++

// Generate primes using the sieve of eratosthenes
#include <iostream>
#include <vector>
int main() {
// TODO: make it work with GMP (https://gmplib.org/)
unsigned int nextnumber { 3 };
bool notprime;
std::vector<unsigned int> primes;
primes.push_back(2); // Initial prime
std::cout << "2\n";
while (true) {
notprime = false;
for (unsigned int i=0;i<primes.size();++i) {
if (nextnumber % primes[i] == 0) {
notprime = true;
break;
}
}
if (!notprime) {
primes.push_back(nextnumber);
std::cout << nextnumber << '\n';
}
nextnumber += 2; // Except for two, primes are odd. This skips even numbers.
}
}