Converte números para uma base especificada, entre 2 e 36, para uso em predefinições como {{Binário}}, {{Octal}}, {{Hexadecimal}}, etc.

local BaseConvert = require('Módulo:BaseConvert')
BaseConvert.convert({n = 14600926, base = 16}) -- retorna 'DECADE'

Argumentos:

  • |n= - (necessário) o número a ser convertido, como uma string. Pode ser um número em vez disso, se a base de entrada for 10.
  • |base= - (necessário) a base para a qual o número deve ser convertido. Pode ser entre 2 e 36, inclusive.
  • |from= - a base da entrada. O padrão é 10 (ou 16 se a entrada tiver um '0x' inicial). Observe que bases diferentes de 10 não são suportadas se a entrada tiver uma parte fracionária.
  • |precision= - número de dígitos a serem renderizados após o ponto de raiz. Zeros à direita serão adicionados, se necessário. Se não for especificado, serão mostrados quantos dígitos forem necessários, até 10.
  • |width= - número mínimo de dígitos a serem renderizados antes do ponto de raiz. Zeros à esquerda serão adicionados, se necessário.
  • |default= - Valor a ser retornado se n estiver vazio ou não for numérico. O padrão é o valor de n.
  • |prefix= / |suffix= - texto wiki para adicionar antes/depois do resultado retornado. Não será adicionado se n estiver vazio ou não for numérico. Por exemplo, você pode usar um prefixo de 0x ao converter para hexadecimal ou um sufixo de <sub>8</sub> ao converter para octal.

A partir de predefinições

editar

Na marcação wiki, este módulo pode ser chamado com um nome de função ntom, por exemplo:

Marcação Renderiza como
{{#invoke:BaseConvert|16to10|  FF  }}

255

{{#invoke:BaseConvert|10to36|500}}

DW

{{#invoke:BaseConvert|10to16|Algum texto|default=0}}

0

Todas as opções acima são suportadas, exceto |base=, |from= e |n= que são definidas pelas opções obrigatórias.

Casos extremos

editar
Marcação Renderiza como
{{#invoke:BaseConvert|10to10|500}}

500

{{#invoke:BaseConvert|10to10|Algum texto}}

Algum texto

{{#invoke:BaseConvert|10to10|Algum texto|default=}}
{{#invoke:BaseConvert|10to16|Algum texto}}

Algum texto