factor/basis/math/functions/integer-logs/integer-logs-docs.factor

37 lines
1.3 KiB
Factor

! Copyright (C) 2017 Jon Harper.
! See http://factorcode.org/license.txt for BSD license.
USING: help.markup help.syntax kernel math quotations ;
IN: math.functions.integer-logs
HELP: integer-log10
{ $values
{ "x" "a positive rational number" }
{ "n" integer }
}
{ $description "Outputs the largest integer " { $snippet "n" } " such that " { $snippet "10^n" } " is less than or equal to " { $snippet "x" } "." }
{ $errors "Throws an error if " { $snippet "x" } " is zero or negative." } ;
HELP: integer-log2
{ $values
{ "x" "a positive rational number" }
{ "n" integer }
}
{ $description "Outputs the largest integer " { $snippet "n" } " such that " { $snippet "2^n" } " is less than or equal to " { $snippet "x" } "." }
{ $errors "Throws an error if " { $snippet "x" } " is zero or negative." } ;
ARTICLE: "integer-logs" "Integer logarithms"
"The " { $vocab-link "math.functions.integer-logs" } " vocabulary provides exact integer logarithms for all rational numbers:"
{ $subsections integer-log2 integer-log10 }
{ $examples
{ $example
"USING: prettyprint math.functions.integer-logs sequences ;"
"{"
" 5 99 100 101 100000000000000000000"
" 100+1/2 1/100"
"} [ integer-log10 ] map ."
"{ 0 1 2 2 20 2 -2 }"
}
} ;
ABOUT: "integer-logs"