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



See Also ...

Topics

DOC_lua_base Lua base functions
DOC_lua_bit Lua bit manipulation functions
DOC_lua_coroutines Lua coroutine functions
DOC_lua_debug Lua debug functions
DOC_lua_io Lua io functions
DOC_lua_math Lua math functions
DOC_lua_os Lua os functions
DOC_lua_package Lua package functions
DOC_lua_rex Lua PCRE regular expression functions
DOC_lua Lua script extensions
DOC_lua_string Lua string functions
DOC_lua_tables Lua table functions
DOC_lua_utils Lua utilities
DOC_scripting Scripting

Lua functions

LUA_bc.add bc.add (Addition)
LUA_bc.compare bc.compare (Comparison)
LUA_bc.digits bc.digits (Digits after the decimal place)
LUA_bc.div bc.div (Division)
LUA_bc.isneg bc.isneg (Tests if negative)
LUA_bc.iszero bc.iszero (Tests if zero)
LUA_bc.mod bc.mod (Modulus)
LUA_bc.mul bc.mul (Multiplication)
LUA_bc.number bc.number (Create a big number)
LUA_bc.pow bc.pow (Power)
LUA_bc.sqrt bc.sqrt (Square root)
LUA_bc.sub bc.sub (Subtraction)
LUA_bc.tostring bc.tostring (Converts to a string)
LUA_bc.version bc.version (Version)

(Help topic: general=lua_bc)

DOC_contents Documentation contents page