Módulo:Números

Indicacións de uso do módulo

Uso

Este módulo proporciona operacións para converter números a outros sistemas de numeración.

Funcións

Romano

Convirte un número entre 1 e 3999, normalmente un ano ou un século, en número romano. Sintaxe:

{{#Invoke:Números|Romano|<número>}}
Exemplos
  • {{#Invoke:Números|Romano|2014}} → MMXIV
  • Século {{#Invoke:Números|Romano|15}} → Século XV
  • {{#Invoke:Números|Romano|4000}}
  • {{#Invoke:Números|Romano|-100}}

Esta documentación está transcluída desde Módulo:Números/uso. Os editores poden probar cambios no mesmo en Módulo:Números/probas.
Por favor, engade as categorías na subpáxina de documentación e os interwikis no Wikidata. Ver as subpáxinas deste módulo.

local z = {}    function z.Romano(frame)  local numero,argumentos,parent  local NumerosRomanosMenores4000 = {     {3000, "MMM"},{2000, "MM"},{1000, "M"},     {900, "CM"}, {800, "DCCC"}, {700, "DCC"}, {600, "DC"}, {500, "D"}, {400, "CD"},     {300, "CCC"}, {200, "CC"}, {100, "C"},     {90, "XC"},{80, "LXXX"},{70, "LXX"},{60, "LX"}, {50, "L"}, {40, "XL"},      {30, "XXX"},{20, "XX"},{10, "X"},     {9, "IX"}, {8, "VIII"},{7, "VII"},{6, "VI"}, {5, "V"}, {4, "IV"},     {3, "III"},{2, "II"}, {1, "I"}   }  if type(frame) == 'number' then -- Para poder llamarlo desde otro módulo fácilmente      numero = frame  else      argumentos = frame.args;      parent     = frame:getParent();      numero     = tonumber(argumentos[1] or parent.args[1]) --Número decimal que se quiere convertir a numeración romana  end  if numero == nil or numero == "" or numero >= 4000 then return "" end    local resultado = ''      for _, v in ipairs( NumerosRomanosMenores4000 ) do    local valor, letras = unpack( v )        if numero >= valor then       numero    = numero - valor       resultado = resultado .. letras    end  end    return resultadoendreturn z