Difference between revisions of "Module:Sandbox/IJReid/Mathematics"

From blackwiki
Jump to navigation Jump to search
blackwiki>IJReid
(fix)
blackwiki>IJReid
(mistake fixed)
Line 4: Line 4:
 
mathematics.addition = function(input) --Addition function
 
mathematics.addition = function(input) --Addition function
 
local sum = 0 --Define variable for use in loop
 
local sum = 0 --Define variable for use in loop
for arg, i in pairs(input.args) do --Loop to run through all arguments
+
for i, arg in pairs(input.args) do --Loop to run through all arguments
 
sum = sum + arg --Add argument value to sum
 
sum = sum + arg --Add argument value to sum
 
end
 
end
Line 18: Line 18:
 
local product = 1 --Set product as 1 (so multiplication of it works)
 
local product = 1 --Set product as 1 (so multiplication of it works)
 
local pi = 3.141592653589793 --Set pi as 15 digits of precision
 
local pi = 3.141592653589793 --Set pi as 15 digits of precision
for arg, i in pairs(input.args) do --Allow multiple arguments
+
for i, arg in pairs(input.args) do --Allow multiple arguments
 
if (arg == "pi" or arg == "π" or arg == 3.14) then --Set pi to π argument
 
if (arg == "pi" or arg == "π" or arg == 3.14) then --Set pi to π argument
 
arg = pi
 
arg = pi

Revision as of 20:22, 22 October 2017

Usage

{{#invoke:Sandbox/IJReid|function_name}}

Functions 
Multiplication - {{#invoke:Sandbox/IJReid|multiplication|case_1|case_2}}
Division - {{#invoke:Sandbox/IJReid|division|case_1|case_2}}
Subtraction - {{#invoke:Sandbox/IJReid|subtraction|case_1|case_2}}
Addition - {{#invoke:Sandbox/IJReid|addition|case_1|case_2}}
Calculations for archival templates 
{{#invoke:Sandbox/IJReid/Mathematics|subtraction|{{#invoke:Sandbox/IJReid/Mathematics|multiplication|{{Age in days|01 January {{safesubst:CURRENTYEAR}}}}|24}}|{{#invoke:Sandbox/IJReid/Mathematics|subtraction|24|{{safesubst:CURRENTHOUR}}}}}}
Lua error at line 13: attempt to perform arithmetic on field '?' (a string value).
75



--Module to calculate basic math values
mathematics = {}

mathematics.addition = function(input)				--Addition function
	local sum = 0									--Define variable for use in loop
	for i, arg in pairs(input.args) do				--Loop to run through all arguments
		sum = sum + arg								--Add argument value to sum
	end
	return sum										--Output the sum to the module
end

mathematics.subtraction = function(input)			--Subtraction function
	local dif = input.args[1] - input.args[2]		--Subtract second argument from first
	return dif										--Outpud difference to module
end

mathematics.multiplication = function(input)		--Multiplication function
	local product = 1								--Set product as 1 (so multiplication of it works)
	local pi = 3.141592653589793					--Set pi as 15 digits of precision
	for i, arg in pairs(input.args) do				--Allow multiple arguments
		if (arg == "pi" or arg == "π" or arg == 3.14) then	--Set pi to π argument
			arg = pi
		else
			product = product * arg					--Multiply arguments together
		end
	end
	return product									--Output product to module
end

mathematics.division = function(input)				--Division function
	local quotient = input.args[1] / input.args[2]	--Divide arg1 by arg2
	return quotient									--Output quotient to module
end

return mathematics									--Output module to place of use