#include using namespace std; int isqrt (long r) { float tempf, x, y, rr; int is; rr = (long) r; y = rr*0.5; *(unsigned long *) &tempf = (0xbe6f0000 - *(unsigned 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 = (int) (x*rr + 0.5); return is + ((signed int) (r - is*is)) >> 31; } bool is_prime (unsigned long long v) { int k, l; if (v == 2) return (true); if (v % 2 == 0) return (false); 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