Register forum user name Search FAQ

Lua bc (big number) functions

Big number (bc) functions

This library lets you do arbitrary precision (big number) arithmetic.

Big numbers have a metatable attached to them so you can add, subtract, divide, multiply, raise to a power, and compare them in the usual way. You can also use bc.add, bc.sub, bc.div, bc.mul, and bc.pow to do the same operations.

Thus, the following two forms are equivalent:


bc.digits (20)
a = bc.number (2)
print (bc.sqrt (a))  --> 1.41421356237309504880
print (a:sqrt ())    --> 1.41421356237309504880


Also see:


  • The math library for other mathematical operations.
  • The bit library for bitwise operations.


Some useful constants are:


           
 e = 2.7182818284590452353602874713526624977572470936999595749669676277240766303535

pi = 3.1415926535897932384626433832795028841971693993751058209749445923078164062862

radians = degrees * pi / 180

Lua functions

bc.add - Addition
bc.compare - Comparison
bc.digits - Digits after the decimal place
bc.div - Division
bc.divmod - Division and remainder
bc.isneg - Tests if negative
bc.iszero - Tests if zero
bc.mod - Modulus
bc.mul - Multiplication
bc.neg - Negation
bc.number - Create a big number
bc.pow - Power
bc.powmod - Raise to a power modulus another number
bc.sqrt - Square root
bc.sub - Subtraction
bc.tonumber - Converts to a number
bc.tostring - Converts to a string
bc.trunc - Truncate a number
bc.version - Version

Topics

Lua base functions
Lua bit manipulation functions
Lua coroutine functions
Lua debug functions
Lua io functions
Lua LPEG library
Lua math functions
Lua os functions
Lua package functions
Lua PCRE regular expression functions
Lua script extensions
Lua string functions
Lua syntax
Lua table functions
Lua utilities
Scripting
Scripting callbacks - plugins

(Help topic: general=lua_bc)

Documentation contents page


Search ...

Enter a search string to find matching documentation.

Search for:   

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.