モジュール:運命数

出典: 謎の百科事典もどき『エンペディア(Enpedia)』
ナビゲーションに移動 検索に移動

この説明文は 『 モジュール:運命数/doc 』 から呼び出されています。
{{運命数}}の内部モジュール。

local p = {}

local function PhytagorasDrillDown(value)
	if value <= 9 or value == 11 or value == 22 then
		return value
	else
		local sum = 0
		for i = 1, math.floor(math.log(value) / math.log(10) + 1), 1  do
			sum = sum + math.floor(math.abs(value/ 10^(i - 1))) % 10
		end
		return PhytagorasDrillDown(sum)
	end
end

function p.PhytagorasNumber( frame )
	return PhytagorasDrillDown(tonumber(frame.args[1]))
end
function p.PhytagorasNumberFromYMD( frame )
	return PhytagorasDrillDown(frame.args[1] * 10000 + frame.args[2] * 100 + frame.args[3])
end

return p