Skip to content

Instantly share code, notes, and snippets.

@toomasv
Last active November 3, 2022 06:33
Show Gist options
  • Save toomasv/006aaa95a0da02844916451fce8a6fcf to your computer and use it in GitHub Desktop.
Save toomasv/006aaa95a0da02844916451fce8a6fcf to your computer and use it in GitHub Desktop.
Form number to given precision
Red [
Description: "Form number to given precision"
Date: 2019-0-13
]
form-to: func [
"Form number to a given floating-point precision"
number [number!] "Number to be formed"
precision [integer!] "Decimal places (positive integer)"
/local pcnt?
][
if precision < 1 [cause-error 'user 'message "`precision` has to be positive integer!"]
if percent? number [pcnt?: yes number: 100 * to-float number]
number: form round/to number 1.0 / power 10 precision
number: head pad/with find/tail number dot precision #"0"
if pcnt? [append number #"%"]
number
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment