Modul:SK/Helper: razlika između inačica
< Modul:SK
Stvorena nova stranica sa sadržajem: »-------------------------------------------------------------------- -- Modul:SK/Helper -------------------------------------------------------------------- local h = {} -- Format broja s tisućicama function h.num(n) if not n then return "" end local s = tostring(n) local left, num, right = s:match('^([^%d]*%d)(%d*)(.-)$') return left .. (num:reverse():gsub('(%d%d%d)','%1 '):reverse()) .. right end -- Format površine (km²) fu...«. |
mNema sažetka uređivanja |
||
| Redak 1: | Redak 1: | ||
local h = {} | |||
local | -- Pomoćna funkcija za čišćenje unosa | ||
local function clean(val) | |||
if type(val) == 'table' then val = val[1] end -- Ako dobije tablicu, uzmi prvu vrijednost | |||
return tonumber(val) | |||
end | |||
-- Format broja s tisućicama | -- Format broja s tisućicama (razmak) | ||
function h.num(n) | function h.num(n) | ||
if not | local num = clean(n) | ||
local s = tostring( | if not num then return "" end | ||
local | |||
local s = tostring(math.floor(num)) | |||
local i, j, minus, int, fraction = s:find('^([-+]?)(%d+)([.]?%d*)$') | |||
int = int:reverse():gsub('(%d%d%d)', '%1 '):reverse():gsub('^ ', '') | |||
return minus .. int .. fraction | |||
end | end | ||
-- Format površine | -- Format površine | ||
function h.area(a) | function h.area(a) | ||
if not | local num = clean(a) | ||
return string.format("%.2f | if not num then return "" end | ||
return string.format("%.2f", num):gsub("%.", ",") .. " km²" | |||
end | end | ||
-- Format gustoće | -- Format gustoće | ||
function h.density(d) | function h.density(d) | ||
if not | local num = clean(d) | ||
return string.format("%.1f st/km²" | if not num then return "" end | ||
return string.format("%.1f", num):gsub("%.", ",") .. " st./km²" | |||
end | end | ||
Inačica od 26. ožujak 2026. u 12:28
Script error: The function "nonexistent" does not exist.
local h = {}
-- Pomoćna funkcija za čišćenje unosa
local function clean(val)
if type(val) == 'table' then val = val[1] end -- Ako dobije tablicu, uzmi prvu vrijednost
return tonumber(val)
end
-- Format broja s tisućicama (razmak)
function h.num(n)
local num = clean(n)
if not num then return "" end
local s = tostring(math.floor(num))
local i, j, minus, int, fraction = s:find('^([-+]?)(%d+)([.]?%d*)$')
int = int:reverse():gsub('(%d%d%d)', '%1 '):reverse():gsub('^ ', '')
return minus .. int .. fraction
end
-- Format površine
function h.area(a)
local num = clean(a)
if not num then return "" end
return string.format("%.2f", num):gsub("%.", ",") .. " km²"
end
-- Format gustoće
function h.density(d)
local num = clean(d)
if not num then return "" end
return string.format("%.1f", num):gsub("%.", ",") .. " st./km²"
end
-- Format stanovništva
function h.pop(p)
return h.num(p)
end
return h