Modulo:Math/sandbox: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
(7 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 467:
-- PERCENTUALE CON DUE CIFRE DECIMALI MOSTRATE
function wrap.
local x = args[1]
local y = args[2]
Riga 476:
yesno = require('Module:Yesno')
end
return p.
end
function p.
if y == nil or y == "" then
return err("Empty divisor")
Riga 503:
--PERCENTUALE CON PARAMETRO PER NUMERO CIFRE DECIMALI DA MOSTRARE
function wrap.
local x = args[1]
local y = args[2]
Riga 512:
yesno = require('Module:Yesno')
end
return p.
end
function p.
if y == nil or y == "" then
return err("Empty divisor")
Riga 570:
end
--VAR
function wrap.
local
local
local round = args.round
local precision = args.precision
local precision_format = args.precision_format
if not yesno then
yesno = require('Module:Yesno')
end
return p.
end
function p.
if y == nil or y == "" then
local z = (b-a)/a*100▼
elseif not tonumber(y) then
if type(y) == 'string' and string.sub(y, 1, 1) == '<' then
return y
else
return err("Not a number: " .. y)
end
elseif x == nil or x == "" then
return err("Empty dividend")
elseif not tonumber(x) then
if type(x) == 'string' and string.sub(x, 1, 1) == '<' then
return x
else
return err("Not a number: " .. x)
end
else
local z = string.format((y-x)/y*100)
return p._precision_format(z, 2)
end
end
--MEDIA▼
function wrap.
return p.
end
▲--MEDIA
function p._media(...)
local vals = makeArgArray(...)
Line 606 ⟶ 626:
end
end
--DIV
function wrap.divide(args)
local x = args[1]
local y = args[2]
local round = args.round
local precision = args.precision
if not yesno then
yesno = require('Module:Yesno')
end
return p._divide(x, y, yesno(round), precision)
end
function p._divide(x, y, round, precision)
if y == nil or y == "" then
return err("Empty divisor")
elseif not tonumber(y) then
if type(y) == 'string' and string.sub(y, 1, 1) == '<' then
return y
else
return err("Not a number: " .. y)
end
elseif x == nil or x == "" then
return err("Empty dividend")
elseif not tonumber(x) then
if type(x) == 'string' and string.sub(x, 1, 1) == '<' then
return x
else
return err("Not a number: " .. x)
end
else
if round then
return p._round(z, 0)
elseif precision then
return p._round(z, precision)
else
return z
end
end
end
--[[
|