[Midnightbsd-cvs] src [11890] trunk/games/primes: reformat
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Tue Jul 17 20:55:19 EDT 2018
Revision: 11890
http://svnweb.midnightbsd.org/src/?rev=11890
Author: laffer1
Date: 2018-07-17 20:55:19 -0400 (Tue, 17 Jul 2018)
Log Message:
-----------
reformat
Modified Paths:
--------------
trunk/games/primes/Makefile
trunk/games/primes/pattern.c
trunk/games/primes/pr_tbl.c
trunk/games/primes/primes.c
trunk/games/primes/primes.h
Modified: trunk/games/primes/Makefile
===================================================================
--- trunk/games/primes/Makefile 2018-07-18 00:55:03 UTC (rev 11889)
+++ trunk/games/primes/Makefile 2018-07-18 00:55:19 UTC (rev 11890)
@@ -1,10 +1,10 @@
+# $MidnightBSD$
# @(#)Makefile 8.1 (Berkeley) 5/31/93
-# $FreeBSD: src/games/primes/Makefile,v 1.3 2004/12/21 08:46:57 ru Exp $
-# $MidnightBSD$
+# $FreeBSD: stable/10/games/primes/Makefile 276486 2014-12-31 23:25:37Z ngie $
PROG= primes
SRCS= pattern.c pr_tbl.c primes.c
-NO_MAN=
+MAN=
DPADD= ${LIBM}
LDADD= -lm
Modified: trunk/games/primes/pattern.c
===================================================================
--- trunk/games/primes/pattern.c 2018-07-18 00:55:03 UTC (rev 11889)
+++ trunk/games/primes/pattern.c 2018-07-18 00:55:19 UTC (rev 11890)
@@ -1,38 +1,35 @@
+/* $MidnightBSD$ */
/*
-* Copyright (c) 1989, 1993
-* The Regents of the University of California. All rights reserved.
-*
-* This code is derived from software contributed to Berkeley by
-* Landon Curt Noll.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-* 1. Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* 2. Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in the
-* documentation and/or other materials provided with the distribution.
-* 3. All advertising materials mentioning features or use of this software
-* must display the following acknowledgement:
-* This product includes software developed by the University of
-* California, Berkeley and its contributors.
-* 4. Neither the name of the University nor the names of its contributors
-* may be used to endorse or promote products derived from this software
-* without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-* SUCH DAMAGE.
-*/
+ * Copyright (c) 1989, 1993
+ * The Regents of the University of California. All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * Landon Curt Noll.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
#ifndef lint
#if 0
@@ -39,23 +36,21 @@
static char sccsid[] = "@(#)pattern.c 8.1 (Berkeley) 5/31/93";
#endif
static const char rcsid[] =
-"$FreeBSD: src/games/primes/pattern.c,v 1.6 2003/01/01 18:48:42 schweikh Exp $";
+ "$FreeBSD: stable/10/games/primes/pattern.c 203932 2010-02-15 18:46:02Z imp $";
#endif /* not lint */
/*
-* pattern - the Eratosthenes sieve on odd numbers for 3,5,7,11 and 13
-*
-* By: Landon Curt Noll chongo at toad.com
-*
-* chongo <for a good prime call: 391581 * 2^216193 - 1> /oo/ *
-* To avoid excessive sieves for small factors, we use the table below to
-* setup our sieve blocks. Each element represents an odd number starting
-* with 1. All non-zero elements are factors of 3, 5, 7, 11 and 13.
-*/
+ * pattern - the Eratosthenes sieve on odd numbers for 3,5,7,11 and 13
+ *
+ * By: Landon Curt Noll chongo at toad.com
+ *
+ * chongo <for a good prime call: 391581 * 2^216193 - 1> /\oo/\
+ *
+ * To avoid excessive sieves for small factors, we use the table below to
+ * setup our sieve blocks. Each element represents an odd number starting
+ * with 1. All non-zero elements are factors of 3, 5, 7, 11 and 13.
+ */
-#include <sys/cdefs.h>
-__MBSDID("$MidnightBSD$");
-
#include <stddef.h>
#include "primes.h"
Modified: trunk/games/primes/pr_tbl.c
===================================================================
--- trunk/games/primes/pr_tbl.c 2018-07-18 00:55:03 UTC (rev 11889)
+++ trunk/games/primes/pr_tbl.c 2018-07-18 00:55:19 UTC (rev 11890)
@@ -1,38 +1,35 @@
+/* $MidnightBSD$ */
/*
-* Copyright (c) 1989, 1993
-* The Regents of the University of California. All rights reserved.
-*
-* This code is derived from software contributed to Berkeley by
-* Landon Curt Noll.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-* 1. Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* 2. Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in the
-* documentation and/or other materials provided with the distribution.
-* 3. All advertising materials mentioning features or use of this software
-* must display the following acknowledgement:
-* This product includes software developed by the University of
-* California, Berkeley and its contributors.
-* 4. Neither the name of the University nor the names of its contributors
-* may be used to endorse or promote products derived from this software
-* without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-* SUCH DAMAGE.
-*/
+ * Copyright (c) 1989, 1993
+ * The Regents of the University of California. All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * Landon Curt Noll.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
#ifndef lint
#if 0
@@ -39,22 +36,20 @@
static char sccsid[] = "@(#)pr_tbl.c 8.1 (Berkeley) 5/31/93";
#endif
static const char rcsid[] =
-"$FreeBSD: src/games/primes/pr_tbl.c,v 1.5 2002/10/09 19:38:55 fanf Exp $";
+ "$FreeBSD: stable/10/games/primes/pr_tbl.c 203932 2010-02-15 18:46:02Z imp $";
#endif /* not lint */
/*
-* prime - prime table
-*
-* By: Landon Curt Noll chongo at toad.com, ...!{sun,tolsoft}!hoptoad!chongo
-*
-* chongo <for a good prime call: 391581 * 2^216193 - 1> /oo/ *
-* We are able to sieve 2^32-1 because this table has primes up to 65537
-* and 65537^2 > 2^32-1.
-*/
+ * prime - prime table
+ *
+ * By: Landon Curt Noll chongo at toad.com, ...!{sun,tolsoft}!hoptoad!chongo
+ *
+ * chongo <for a good prime call: 391581 * 2^216193 - 1> /\oo/\
+ *
+ * We are able to sieve 2^32-1 because this table has primes up to 65537
+ * and 65537^2 > 2^32-1.
+ */
-#include <sys/cdefs.h>
-__MBSDID("$MidnightBSD$");
-
#include <stddef.h>
#include "primes.h"
Modified: trunk/games/primes/primes.c
===================================================================
--- trunk/games/primes/primes.c 2018-07-18 00:55:03 UTC (rev 11889)
+++ trunk/games/primes/primes.c 2018-07-18 00:55:19 UTC (rev 11890)
@@ -1,42 +1,40 @@
+/* $MidnightBSD$ */
/*
-* Copyright (c) 1989, 1993
-* The Regents of the University of California. All rights reserved.
-*
-* This code is derived from software contributed to Berkeley by
-* Landon Curt Noll.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-* 1. Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* 2. Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in the
-* documentation and/or other materials provided with the distribution.
-* 3. All advertising materials mentioning features or use of this software
-* must display the following acknowledgement:
-* This product includes software developed by the University of
-* California, Berkeley and its contributors.
-* 4. Neither the name of the University nor the names of its contributors
-* may be used to endorse or promote products derived from this software
-* without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-* SUCH DAMAGE.
-*/
+ * Copyright (c) 1989, 1993
+ * The Regents of the University of California. All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * Landon Curt Noll.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
#ifndef lint
static const char copyright[] =
-"@(#) Copyright (c) 1989, 1993n The Regents of the University of California. All rights reserved.n";
+"@(#) Copyright (c) 1989, 1993\n\
+ The Regents of the University of California. All rights reserved.\n";
#endif /* not lint */
#ifndef lint
@@ -44,28 +42,26 @@
static char sccsid[] = "@(#)primes.c 8.5 (Berkeley) 5/10/95";
#endif
static const char rcsid[] =
-"$FreeBSD: src/games/primes/primes.c,v 1.21 2002/10/09 20:42:40 fanf Exp $";
+ "$FreeBSD: stable/10/games/primes/primes.c 203932 2010-02-15 18:46:02Z imp $";
#endif /* not lint */
/*
-* primes - generate a table of primes between two values
-*
-* By: Landon Curt Noll chongo at toad.com, ...!{sun,tolsoft}!hoptoad!chongo
-*
-* chongo <for a good prime call: 391581 * 2^216193 - 1> /oo/ *
-* usage:
-* primes [-h] [start [stop]]
-*
-* Print primes >= start and < stop. If stop is omitted,
-* the value 4294967295 (2^32-1) is assumed. If start is
-* omitted, start is read from standard input.
-*
-* validation check: there are 664579 primes between 0 and 10^7
-*/
+ * primes - generate a table of primes between two values
+ *
+ * By: Landon Curt Noll chongo at toad.com, ...!{sun,tolsoft}!hoptoad!chongo
+ *
+ * chongo <for a good prime call: 391581 * 2^216193 - 1> /\oo/\
+ *
+ * usage:
+ * primes [-h] [start [stop]]
+ *
+ * Print primes >= start and < stop. If stop is omitted,
+ * the value 4294967295 (2^32-1) is assumed. If start is
+ * omitted, start is read from standard input.
+ *
+ * validation check: there are 664579 primes between 0 and 10^7
+ */
-#include <sys/cdefs.h>
-__MBSDID("$MidnightBSD$");
-
#include <ctype.h>
#include <err.h>
#include <errno.h>
@@ -79,14 +75,14 @@
#include "primes.h"
/*
-* Eratosthenes sieve table
-*
-* We only sieve the odd numbers. The base of our sieve windows are always
-* odd. If the base of table is 1, table[i] represents 2*i-1. After the
-* sieve, table[i] == 1 if and only if 2*i-1 is prime.
-*
-* We make TABSIZE large to reduce the overhead of inner loop setup.
-*/
+ * Eratosthenes sieve table
+ *
+ * We only sieve the odd numbers. The base of our sieve windows are always
+ * odd. If the base of table is 1, table[i] represents 2*i-1. After the
+ * sieve, table[i] == 1 if and only if 2*i-1 is prime.
+ *
+ * We make TABSIZE large to reduce the overhead of inner loop setup.
+ */
static char table[TABSIZE]; /* Eratosthenes sieve of odd numbers */
static int hflag;
@@ -98,226 +94,226 @@
int
main(int argc, char *argv[])
{
-ubig start; /* where to start generating */
-ubig stop; /* don't generate at or above this value */
-int ch;
-char *p;
+ ubig start; /* where to start generating */
+ ubig stop; /* don't generate at or above this value */
+ int ch;
+ char *p;
-while ((ch = getopt(argc, argv, "h")) != -1)
-switch (ch) {
-case 'h':
-hflag++;
-break;
-case '?':
-default:
-usage();
-}
-argc -= optind;
-argv += optind;
+ while ((ch = getopt(argc, argv, "h")) != -1)
+ switch (ch) {
+ case 'h':
+ hflag++;
+ break;
+ case '?':
+ default:
+ usage();
+ }
+ argc -= optind;
+ argv += optind;
-start = 0;
-stop = BIG;
+ start = 0;
+ stop = BIG;
-/*
-* Convert low and high args. Strtoul(3) sets errno to
-* ERANGE if the number is too large, but, if there's
-* a leading minus sign it returns the negation of the
-* result of the conversion, which we'd rather disallow.
-*/
-switch (argc) {
-case 2:
-/* Start and stop supplied on the command line. */
-if (argv[0][0] == '-' || argv[1][0] == '-')
-errx(1, "negative numbers aren't permitted.");
+ /*
+ * Convert low and high args. Strtoul(3) sets errno to
+ * ERANGE if the number is too large, but, if there's
+ * a leading minus sign it returns the negation of the
+ * result of the conversion, which we'd rather disallow.
+ */
+ switch (argc) {
+ case 2:
+ /* Start and stop supplied on the command line. */
+ if (argv[0][0] == '-' || argv[1][0] == '-')
+ errx(1, "negative numbers aren't permitted.");
-errno = 0;
-start = strtoul(argv[0], &p, 0);
-if (errno)
-err(1, "%s", argv[0]);
-if (*p != '0')
-errx(1, "%s: illegal numeric format.", argv[0]);
+ errno = 0;
+ start = strtoul(argv[0], &p, 0);
+ if (errno)
+ err(1, "%s", argv[0]);
+ if (*p != '\0')
+ errx(1, "%s: illegal numeric format.", argv[0]);
-errno = 0;
-stop = strtoul(argv[1], &p, 0);
-if (errno)
-err(1, "%s", argv[1]);
-if (*p != '0')
-errx(1, "%s: illegal numeric format.", argv[1]);
-break;
-case 1:
-/* Start on the command line. */
-if (argv[0][0] == '-')
-errx(1, "negative numbers aren't permitted.");
+ errno = 0;
+ stop = strtoul(argv[1], &p, 0);
+ if (errno)
+ err(1, "%s", argv[1]);
+ if (*p != '\0')
+ errx(1, "%s: illegal numeric format.", argv[1]);
+ break;
+ case 1:
+ /* Start on the command line. */
+ if (argv[0][0] == '-')
+ errx(1, "negative numbers aren't permitted.");
-errno = 0;
-start = strtoul(argv[0], &p, 0);
-if (errno)
-err(1, "%s", argv[0]);
-if (*p != '0')
-errx(1, "%s: illegal numeric format.", argv[0]);
-break;
-case 0:
-start = read_num_buf();
-break;
-default:
-usage();
-}
+ errno = 0;
+ start = strtoul(argv[0], &p, 0);
+ if (errno)
+ err(1, "%s", argv[0]);
+ if (*p != '\0')
+ errx(1, "%s: illegal numeric format.", argv[0]);
+ break;
+ case 0:
+ start = read_num_buf();
+ break;
+ default:
+ usage();
+ }
-if (start > stop)
-errx(1, "start value must be less than stop value.");
-primes(start, stop);
-return (0);
+ if (start > stop)
+ errx(1, "start value must be less than stop value.");
+ primes(start, stop);
+ return (0);
}
/*
-* read_num_buf --
-* This routine returns a number n, where 0 <= n && n <= BIG.
-*/
+ * read_num_buf --
+ * This routine returns a number n, where 0 <= n && n <= BIG.
+ */
static ubig
read_num_buf(void)
{
-ubig val;
-char *p, buf[LINE_MAX]; /* > max number of digits. */
+ ubig val;
+ char *p, buf[LINE_MAX]; /* > max number of digits. */
-for (;;) {
-if (fgets(buf, sizeof(buf), stdin) == NULL) {
-if (ferror(stdin))
-err(1, "stdin");
-exit(0);
+ for (;;) {
+ if (fgets(buf, sizeof(buf), stdin) == NULL) {
+ if (ferror(stdin))
+ err(1, "stdin");
+ exit(0);
+ }
+ for (p = buf; isblank(*p); ++p);
+ if (*p == '\n' || *p == '\0')
+ continue;
+ if (*p == '-')
+ errx(1, "negative numbers aren't permitted.");
+ errno = 0;
+ val = strtoul(buf, &p, 0);
+ if (errno)
+ err(1, "%s", buf);
+ if (*p != '\n')
+ errx(1, "%s: illegal numeric format.", buf);
+ return (val);
+ }
}
-for (p = buf; isblank(*p); ++p);
-if (*p == 'n' || *p == '0')
-continue;
-if (*p == '-')
-errx(1, "negative numbers aren't permitted.");
-errno = 0;
-val = strtoul(buf, &p, 0);
-if (errno)
-err(1, "%s", buf);
-if (*p != 'n')
-errx(1, "%s: illegal numeric format.", buf);
-return (val);
-}
-}
/*
-* primes - sieve and print primes from start up to and but not including stop
-*/
+ * primes - sieve and print primes from start up to and but not including stop
+ */
static void
primes(ubig start, ubig stop)
{
-char *q; /* sieve spot */
-ubig factor; /* index and factor */
-char *tab_lim; /* the limit to sieve on the table */
-const ubig *p; /* prime table pointer */
-ubig fact_lim; /* highest prime for current block */
-ubig mod; /* temp storage for mod */
+ char *q; /* sieve spot */
+ ubig factor; /* index and factor */
+ char *tab_lim; /* the limit to sieve on the table */
+ const ubig *p; /* prime table pointer */
+ ubig fact_lim; /* highest prime for current block */
+ ubig mod; /* temp storage for mod */
-/*
-* A number of systems can not convert double values into unsigned
-* longs when the values are larger than the largest signed value.
-* We don't have this problem, so we can go all the way to BIG.
-*/
-if (start < 3) {
-start = (ubig)2;
-}
-if (stop < 3) {
-stop = (ubig)2;
-}
-if (stop <= start) {
-return;
-}
+ /*
+ * A number of systems can not convert double values into unsigned
+ * longs when the values are larger than the largest signed value.
+ * We don't have this problem, so we can go all the way to BIG.
+ */
+ if (start < 3) {
+ start = (ubig)2;
+ }
+ if (stop < 3) {
+ stop = (ubig)2;
+ }
+ if (stop <= start) {
+ return;
+ }
-/*
-* be sure that the values are odd, or 2
-*/
-if (start != 2 && (start&0x1) == 0) {
-++start;
-}
-if (stop != 2 && (stop&0x1) == 0) {
-++stop;
-}
+ /*
+ * be sure that the values are odd, or 2
+ */
+ if (start != 2 && (start&0x1) == 0) {
+ ++start;
+ }
+ if (stop != 2 && (stop&0x1) == 0) {
+ ++stop;
+ }
-/*
-* quick list of primes <= pr_limit
-*/
-if (start <= *pr_limit) {
-/* skip primes up to the start value */
-for (p = &prime[0], factor = prime[0];
-factor < stop && p <= pr_limit; factor = *(++p)) {
-if (factor >= start) {
-printf(hflag ? "0x%lxn" : "%lun", factor);
-}
-}
-/* return early if we are done */
-if (p <= pr_limit) {
-return;
-}
-start = *pr_limit+2;
-}
+ /*
+ * quick list of primes <= pr_limit
+ */
+ if (start <= *pr_limit) {
+ /* skip primes up to the start value */
+ for (p = &prime[0], factor = prime[0];
+ factor < stop && p <= pr_limit; factor = *(++p)) {
+ if (factor >= start) {
+ printf(hflag ? "0x%lx\n" : "%lu\n", factor);
+ }
+ }
+ /* return early if we are done */
+ if (p <= pr_limit) {
+ return;
+ }
+ start = *pr_limit+2;
+ }
-/*
-* we shall sieve a bytemap window, note primes and move the window
-* upward until we pass the stop point
-*/
-while (start < stop) {
-/*
-* factor out 3, 5, 7, 11 and 13
-*/
-/* initial pattern copy */
-factor = (start%(2*3*5*7*11*13))/2; /* starting copy spot */
-memcpy(table, &pattern[factor], pattern_size-factor);
-/* main block pattern copies */
-for (fact_lim=pattern_size-factor;
-fact_lim+pattern_size<=TABSIZE; fact_lim+=pattern_size) {
-memcpy(&table[fact_lim], pattern, pattern_size);
-}
-/* final block pattern copy */
-memcpy(&table[fact_lim], pattern, TABSIZE-fact_lim);
+ /*
+ * we shall sieve a bytemap window, note primes and move the window
+ * upward until we pass the stop point
+ */
+ while (start < stop) {
+ /*
+ * factor out 3, 5, 7, 11 and 13
+ */
+ /* initial pattern copy */
+ factor = (start%(2*3*5*7*11*13))/2; /* starting copy spot */
+ memcpy(table, &pattern[factor], pattern_size-factor);
+ /* main block pattern copies */
+ for (fact_lim=pattern_size-factor;
+ fact_lim+pattern_size<=TABSIZE; fact_lim+=pattern_size) {
+ memcpy(&table[fact_lim], pattern, pattern_size);
+ }
+ /* final block pattern copy */
+ memcpy(&table[fact_lim], pattern, TABSIZE-fact_lim);
-/*
-* sieve for primes 17 and higher
-*/
-/* note highest useful factor and sieve spot */
-if (stop-start > TABSIZE+TABSIZE) {
-tab_lim = &table[TABSIZE]; /* sieve it all */
-fact_lim = sqrt(start+1.0+TABSIZE+TABSIZE);
-} else {
-tab_lim = &table[(stop-start)/2]; /* partial sieve */
-fact_lim = sqrt(stop+1.0);
-}
-/* sieve for factors >= 17 */
-factor = 17; /* 17 is first prime to use */
-p = &prime[7]; /* 19 is next prime, pi(19)=7 */
-do {
-/* determine the factor's initial sieve point */
-mod = start%factor;
-if (mod & 0x1) {
-q = &table[(factor-mod)/2];
-} else {
-q = &table[mod ? factor-(mod/2) : 0];
-}
-/* sive for our current factor */
-for ( ; q < tab_lim; q += factor) {
-*q = '0'; /* sieve out a spot */
-}
-factor = *p++;
-} while (factor <= fact_lim);
+ /*
+ * sieve for primes 17 and higher
+ */
+ /* note highest useful factor and sieve spot */
+ if (stop-start > TABSIZE+TABSIZE) {
+ tab_lim = &table[TABSIZE]; /* sieve it all */
+ fact_lim = sqrt(start+1.0+TABSIZE+TABSIZE);
+ } else {
+ tab_lim = &table[(stop-start)/2]; /* partial sieve */
+ fact_lim = sqrt(stop+1.0);
+ }
+ /* sieve for factors >= 17 */
+ factor = 17; /* 17 is first prime to use */
+ p = &prime[7]; /* 19 is next prime, pi(19)=7 */
+ do {
+ /* determine the factor's initial sieve point */
+ mod = start%factor;
+ if (mod & 0x1) {
+ q = &table[(factor-mod)/2];
+ } else {
+ q = &table[mod ? factor-(mod/2) : 0];
+ }
+ /* sive for our current factor */
+ for ( ; q < tab_lim; q += factor) {
+ *q = '\0'; /* sieve out a spot */
+ }
+ factor = *p++;
+ } while (factor <= fact_lim);
-/*
-* print generated primes
-*/
-for (q = table; q < tab_lim; ++q, start+=2) {
-if (*q) {
-printf(hflag ? "0x%lxn" : "%lun", start);
+ /*
+ * print generated primes
+ */
+ for (q = table; q < tab_lim; ++q, start+=2) {
+ if (*q) {
+ printf(hflag ? "0x%lx\n" : "%lu\n", start);
+ }
+ }
+ }
}
-}
-}
-}
static void
usage(void)
{
-fprintf(stderr, "usage: primes [-h] [start [stop]]n");
-exit(1);
+ fprintf(stderr, "usage: primes [-h] [start [stop]]\n");
+ exit(1);
}
Modified: trunk/games/primes/primes.h
===================================================================
--- trunk/games/primes/primes.h 2018-07-18 00:55:03 UTC (rev 11889)
+++ trunk/games/primes/primes.h 2018-07-18 00:55:19 UTC (rev 11890)
@@ -1,49 +1,46 @@
+/* $MidnightBSD$ */
/*
-* Copyright (c) 1989, 1993
-* The Regents of the University of California. All rights reserved.
-*
-* This code is derived from software contributed to Berkeley by
-* Landon Curt Noll.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-* 1. Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* 2. Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in the
-* documentation and/or other materials provided with the distribution.
-* 3. All advertising materials mentioning features or use of this software
-* must display the following acknowledgement:
-* This product includes software developed by the University of
-* California, Berkeley and its contributors.
-* 4. Neither the name of the University nor the names of its contributors
-* may be used to endorse or promote products derived from this software
-* without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-* SUCH DAMAGE.
-*
-* @(#)primes.h 8.2 (Berkeley) 3/1/94
-* $FreeBSD: src/games/primes/primes.h,v 1.3 2003/01/01 18:48:42 schweikh Exp $
-* $MidnightBSD$
-*/
+ * Copyright (c) 1989, 1993
+ * The Regents of the University of California. All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * Landon Curt Noll.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * @(#)primes.h 8.2 (Berkeley) 3/1/94
+ * $FreeBSD: stable/10/games/primes/primes.h 203932 2010-02-15 18:46:02Z imp $
+ */
/*
-* primes - generate a table of primes between two values
-*
-* By: Landon Curt Noll chongo at toad.com, ...!{sun,tolsoft}!hoptoad!chongo
-*
-* chongo <for a good prime call: 391581 * 2^216193 - 1> /oo/ */
+ * primes - generate a table of primes between two values
+ *
+ * By: Landon Curt Noll chongo at toad.com, ...!{sun,tolsoft}!hoptoad!chongo
+ *
+ * chongo <for a good prime call: 391581 * 2^216193 - 1> /\oo/\
+ */
/* ubig is the type that holds a large unsigned value */
typedef unsigned long ubig; /* must be >=32 bit unsigned value */
@@ -53,18 +50,18 @@
#define TABSIZE 256*1024
/*
-* prime[i] is the (i-1)th prime.
-*
-* We are able to sieve 2^32-1 because this byte table yields all primes
-* up to 65537 and 65537^2 > 2^32-1.
-*/
+ * prime[i] is the (i-1)th prime.
+ *
+ * We are able to sieve 2^32-1 because this byte table yields all primes
+ * up to 65537 and 65537^2 > 2^32-1.
+ */
extern const ubig prime[];
extern const ubig *const pr_limit; /* largest prime in the prime array */
/*
-* To avoid excessive sieves for small factors, we use the table below to
-* setup our sieve blocks. Each element represents an odd number starting
-* with 1. All non-zero elements are factors of 3, 5, 7, 11 and 13.
-*/
+ * To avoid excessive sieves for small factors, we use the table below to
+ * setup our sieve blocks. Each element represents an odd number starting
+ * with 1. All non-zero elements are factors of 3, 5, 7, 11 and 13.
+ */
extern const char pattern[];
extern const size_t pattern_size; /* length of pattern array */
More information about the Midnightbsd-cvs
mailing list