Merge from vendor branch FILE:
[dragonfly.git] / games / factor / factor.6
1 .\" Copyright (c) 1989, 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" This code is derived from software contributed to Berkeley by
5 .\" Landon Curt Noll.
6 .\"
7 .\" Redistribution and use in source and binary forms, with or without
8 .\" modification, are permitted provided that the following conditions
9 .\" are met:
10 .\" 1. Redistributions of source code must retain the above copyright
11 .\"    notice, this list of conditions and the following disclaimer.
12 .\" 2. Redistributions in binary form must reproduce the above copyright
13 .\"    notice, this list of conditions and the following disclaimer in the
14 .\"    documentation and/or other materials provided with the distribution.
15 .\" 3. All advertising materials mentioning features or use of this software
16 .\"    must display the following acknowledgement:
17 .\"     This product includes software developed by the University of
18 .\"     California, Berkeley and its contributors.
19 .\" 4. Neither the name of the University nor the names of its contributors
20 .\"    may be used to endorse or promote products derived from this software
21 .\"    without specific prior written permission.
22 .\"
23 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 .\" SUCH DAMAGE.
34 .\"
35 .\"     @(#)factor.6    8.1 (Berkeley) 5/31/93
36 .\"
37 .\" $FreeBSD: src/games/factor/factor.6,v 1.5.2.3 2003/01/26 02:54:56 keramida Exp $
38 .\" $DragonFly: src/games/factor/factor.6,v 1.3 2005/08/05 22:35:10 swildner Exp $
39 .\"
40 .\" By: Landon Curt Noll   chongo@toad.com,   ...!{sun,tolsoft}!hoptoad!chongo
41 .\"
42 .\"   chongo <for a good prime call: 391581 * 2^216193 - 1> /\oo/\
43 .\"
44 .Dd October 10, 2002
45 .Dt FACTOR 6
46 .Os
47 .Sh NAME
48 .Nm factor ,
49 .Nm primes
50 .Nd factor a number, generate primes
51 .Sh SYNOPSIS
52 .Nm
53 .Op Fl h
54 .Op Ar number ...
55 .Nm primes
56 .Op Fl h
57 .Op Ar start Op Ar stop
58 .Sh DESCRIPTION
59 The
60 .Nm
61 utility will factor positive integers.
62 When a number is factored, it is printed, followed by a
63 .Ql \&: ,
64 and the list of factors on a single line.
65 Factors are listed in ascending order, and are preceded by a space.
66 If a factor divides a value more than once, it will be printed more than once.
67 .Pp
68 When
69 .Nm
70 is invoked with one or more arguments, each argument will be factored.
71 .Pp
72 When
73 .Nm
74 is invoked with no arguments,
75 .Nm
76 reads numbers, one per line, from standard input, until end of file or error.
77 Leading white-space and empty lines are ignored.
78 Numbers may be preceded by a single
79 .Ql + .
80 Numbers are terminated by a non-digit character (such as a newline).
81 After a number is read, it is factored.
82 .Pp
83 The
84 .Nm primes
85 utility prints primes in ascending order, one per line, starting at or above
86 .Ar start
87 and continuing until, but not including
88 .Ar stop .
89 The
90 .Ar start
91 value must be at least 0 and not greater than
92 .Ar stop .
93 The
94 .Ar stop
95 value must not be greater than the maximum.
96 The default and maximum value of
97 .Ar stop
98 is 4294967295 on 32-bit architectures
99 and 18446744073709551615 on 64-bit ones.
100 .Pp
101 When the
102 .Nm primes
103 utility is invoked with no arguments,
104 .Ar start
105 is read from standard input and
106 .Ar stop
107 is taken to be the maximum.
108 The
109 .Ar start
110 value may be preceded by a single
111 .Ql + .
112 The
113 .Ar start
114 value is terminated by a non-digit character (such as a newline).
115 .Sh DIAGNOSTICS
116 .Bl -diag
117 .It "negative numbers aren't permitted"
118 .It "illegal numeric format"
119 .It "start value must be less than stop value"
120 .It "Result too large"
121 .El
122 .Sh BUGS
123 .Nm
124 cannot handle the
125 .Dq "10 most wanted"
126 factor list,
127 .Nm primes
128 will not get you a world record.