All pastes #31921 Raw Edit

Untitled

public text v1 · immutable
#31921 ·published 2005-12-01 04:05 UTC
rendered paste body
#include <iostream>
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