TestGitRepo/main.cpp

28 lines
677 B
C++
Raw Normal View History

2024-07-05 19:49:52 -04:00
// 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) {
2024-07-05 20:08:41 -04:00
notprime = true;
break;
2024-07-05 19:49:52 -04:00
}
}
if (!notprime) {
primes.push_back(nextnumber);
std::cout << nextnumber << '\n';
}
nextnumber += 2; // Except for two, primes are odd. This skips even numbers.
}
}