[BACK]Return to factor.6 CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / games / factor

Annotation of src/games/factor/factor.6, Revision 1.18

1.18    ! christos    1: .\"    $NetBSD: factor.6,v 1.17 2020/10/11 18:48:20 christos Exp $
1.4       cgd         2: .\"
                      3: .\" Copyright (c) 1989, 1993
                      4: .\"    The Regents of the University of California.  All rights reserved.
1.1       cgd         5: .\"
                      6: .\" This code is derived from software contributed to Berkeley by
                      7: .\" Landon Curt Noll.
                      8: .\"
                      9: .\" Redistribution and use in source and binary forms, with or without
                     10: .\" modification, are permitted provided that the following conditions
                     11: .\" are met:
                     12: .\" 1. Redistributions of source code must retain the above copyright
                     13: .\"    notice, this list of conditions and the following disclaimer.
                     14: .\" 2. Redistributions in binary form must reproduce the above copyright
                     15: .\"    notice, this list of conditions and the following disclaimer in the
                     16: .\"    documentation and/or other materials provided with the distribution.
1.8       agc        17: .\" 3. Neither the name of the University nor the names of its contributors
1.1       cgd        18: .\"    may be used to endorse or promote products derived from this software
                     19: .\"    without specific prior written permission.
                     20: .\"
                     21: .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     22: .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     23: .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     24: .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     25: .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     26: .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     27: .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     28: .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     29: .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     30: .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     31: .\" SUCH DAMAGE.
                     32: .\"
1.4       cgd        33: .\"    @(#)factor.6    8.1 (Berkeley) 5/31/93
1.1       cgd        34: .\"
                     35: .\"
1.13      ast        36: .\" By Landon Curt Noll, http://www.isthe.com/chongo/index.html /\oo/\
1.1       cgd        37: .\"
1.18    ! christos   38: .Dd October 12, 2020
1.3       jtc        39: .Dt FACTOR 6
                     40: .Os
                     41: .Sh NAME
1.9       jsm        42: .Nm factor
                     43: .Nd factor a number
1.3       jtc        44: .Sh SYNOPSIS
1.5       lukem      45: .Nm
1.15      christos   46: .Op Fl hx
1.3       jtc        47: .Op Ar number ...
                     48: .Sh DESCRIPTION
1.1       cgd        49: The
1.5       lukem      50: .Nm
1.18    ! christos   51: utility factors integers larger than
        !            52: .Dv 0 .
1.6       wiz        53: When a number is factored, it is printed, followed by a
1.7       wiz        54: .Dq \&: ,
1.10      dholland   55: and the list of
                     56: .Pq prime
                     57: factors on a single line.
1.1       cgd        58: Factors are listed in ascending order, and are preceded by a space.
1.14      rin        59: By default, if a factor divides a value more than once, it will be
                     60: printed more than once.
1.3       jtc        61: .Pp
1.1       cgd        62: When
1.5       lukem      63: .Nm
1.14      rin        64: is invoked with one or more
                     65: .Ar number
                     66: arguments, each argument will be factored.
1.3       jtc        67: .Pp
1.1       cgd        68: When
1.5       lukem      69: .Nm
1.14      rin        70: is invoked with no
                     71: .Ar number
                     72: arguments,
1.5       lukem      73: .Nm
1.1       cgd        74: reads numbers, one per line, from standard input, until end of file or error.
                     75: Leading white-space and empty lines are ignored.
1.12      joerg      76: Numbers may be preceded by a single +.
1.17      christos   77: Numbers that start with
                     78: .Dv 0x
                     79: are interpreted as hexadecimal.
1.18    ! christos   80: A
        !            81: .Dv 0
        !            82: input exits the program.
        !            83: Negative numbers are not allowed.
1.1       cgd        84: Numbers are terminated by a non-digit character (such as a newline).
                     85: After a number is read, it is factored.
1.10      dholland   86: Input lines must not be longer than
1.11      wiz        87: .Dv LINE_MAX \- 1
1.10      dholland   88: (currently 2047) characters.
                     89: .Pp
                     90: By default,
                     91: .Nm
                     92: is compiled against the OpenSSL bignum implementation
                     93: .Xr openssl_bn 3 ,
                     94: which lets it handle arbitrarily large values.
                     95: .Pq Note however that very large values can take a very long time to factor.
                     96: If
                     97: .Nm
                     98: is compiled without OpenSSL it is limited to the maximum value of
                     99: .Vt unsigned long .
1.14      rin       100: .Pp
                    101: The following option is available:
                    102: .Bl -tag -width flag
                    103: .It Fl h
                    104: If the
                    105: .Fl h
                    106: flag is specified, factors will be printed in "human-readable" format.
                    107: If a factor x divides a value n (>1) times, it will appear as x^n.
1.15      christos  108: .It Fl x
                    109: If the
                    110: .Fl x
1.16      kre       111: flag is specified, factors will be printed in hexadecimal format.
1.14      rin       112: .El
1.3       jtc       113: .Sh DIAGNOSTICS
1.6       wiz       114: Out of range or invalid input results in
1.13      ast       115: an appropriate error message to standard error.
                    116: .Sh AUTHORS
                    117: Originally by
                    118: .An Landon Curt Noll .

CVSweb <webmaster@jp.NetBSD.org>