Example #1
0
UInteger nthPrime(UInteger n) {	
	Array *primes = arrayAlloc();
	primesGetPrimes(n, primes);
	
	if(n >= primes->len)
		return 0;
	
	UInteger32 *a = primes->ptr;
	return a[n-1];
}
Example #2
0
/* connect_fields - connect fields to form */
static int
connect_fields(FORM *f, FIELD **x)
{
	_PAGE *	page;

	int	nf,		/* number of fields	*/
		np;		/* number of pages	*/
	int	i;

	f->field = x;
	f->maxfield = 0;
	f->maxpage = 0;

	if (!x)
		return (E_OK);	/* null field array */

	for (nf = 0, np = 0; x[nf]; ++nf) {
		if (nf == 0 || Status(x[nf], NEW_PAGE))
			++np;			/* count pages */

		if (x[nf]->form)
			return (E_CONNECTED);
		else
			x[nf]->form = f;	/* connect field to form */
	}
	if (nf == 0)
		return (E_BAD_ARGUMENT);		/* no fields */

	if (arrayAlloc(f->page, np, _PAGE)) {
		page = f->page;

		for (i = 0; i < nf; ++i) {
			if (i == 0)
				page->pmin = i;

			else if (Status(x[i], NEW_PAGE)) {
				page->pmax = i - 1;
				++page;
				page->pmin = i;
			}
			merge(x[i], f);
		}
		page->pmax = nf - 1;
		f->maxfield = nf;
		f->maxpage = np;
		sort_form(f);
		return (E_OK);
	}
	return (E_SYSTEM_ERROR);
}