#include using namespace std; long isqrt (unsigned long long r) { double tempf, x, y, rr; int is; rr = (long) r; y = rr*0.5; *(unsigned long long *) &tempf = (0xbe6f0000 - *(unsigned long long *) &rr) >> 1; x = tempf; x = (1.5*x) - (x*x)*(x*y); if (r > 101123) x = (1.5*x) - (x*x)*(x*y); is = (long int) (x*rr + 0.5); return is + ((signed long int) (r - is*is)) >> 31; } // end isqrt bool is_prime (unsigned long long v) { if (v % 2 == 0) return (false); int k, l; l = isqrt(v); for (k = 3; k <= l; k += 2) if (v % k == 0) return (false); return (true); } // end is_prime main (void) { unsigned long long q = 0; while (q < 0xFFFFFFFFFFFFFFFE) { q++; if (is_prime (q)) { cout << q << " \n "; } // end if } // end while cin >> q; } // end main