Bardzo bym prosił by ktoś mi pomógł
Od jakiegoś czasu męczę się nad napisaniem programu znajdującego liczby bliźniacze (tj. takie pary liczb pierwszych że ich różnica = 2)
Zmodyfikuje mi ktoś ten kod?
Dodam że potrzebuję to w c++ (jak zresztą widać)
Najlepiej na już :D
#include <iostream>
#include<math.h>
using namespace std;
const int n = 300;
bool numbersTable[n + 1]; // tablica o indeksach od 0 do 100 | wszystkie false (czyli: 0);
int main()
{
for (int i = 2; i*i <= n; i++ ) // przeszukuj liczby od 2 do sqrt(n), 0 i 1 nie są liczbami pierwszymi
{
if (numbersTable[i] == true) // jeżeli dana liczb jest już wykreślona
continue; // to przejdź do kolejnej
for (int j = 2 * i ; j <= n; j += i) // przejdź od liczby 2 * i do n przesuwając się o i
numbersTable[j] = true; // i każdą z nich usuwaj ze zbioru
}
cout << "Liczby pierwsze z przedziału od 0 do " << n << ":" << endl;
for (int i = 2; i <= n; i++) // przeszukaj liczby od 2 do n
if (numbersTable[i] == false) // jeśli liczba nie została usunięta ze zbioru
cout << i << endl; // to ją wypisz
system("PAUSE");
return 0;
}