Formatação de números
Exiba números de forma elegante.
Formatação de números é uma aula grátis de Lua Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Lua Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Lua Academy inclui 4 aulas no total.
Por que formatar números?
Números brutos nem sempre são exibidos da forma desejada. Um preço pode aparecer como 2.5 quando você quer 2.50, ou um número de ponto flutuante longo pode preencher a tela com dígitos.
A formatação de números permite controlar exatamente como os números aparecem no texto.
print(2.5)
print(1 / 3)Conheça string.format
A principal ferramenta para formatação é string.format(). Você fornece um modelo com marcadores de posição e os valores que devem preenchê-los.
Um marcador de posição começa com %, como %d para um inteiro ou %f para um número de ponto flutuante.
print(string.format("Score: %d", 42))Formatando inteiros com %d
O marcador de posição %d formata um valor como um inteiro decimal.
Ele é perfeito para contagens, pontuações e identificadores que nunca devem exibir uma casa decimal.
local lives = 3
print(string.format("Lives: %d", lives))Formatando números de ponto flutuante com %f
O marcador de posição %f formata um número de ponto flutuante. Por padrão, ele exibe seis dígitos após o ponto decimal.
Isso costuma ser mais do que o necessário, então geralmente você define a precisão por conta própria.
print(string.format("%f", 3.14))Controlando as casas decimais
Escreva %.2f para exibir exatamente duas casas decimais. O número depois do ponto indica a precisão.
Essa é a forma clássica de formatar valores monetários com clareza.
local price = 2.5
print(string.format("$%.2f", price))Arredondando com a formatação
A formatação também arredonda o valor para a precisão solicitada. Aplicar %.1f a 3.456 arredonda o valor para 3.5.
Observe que isso afeta apenas o texto exibido, não o número original.
print(string.format("%.1f", 3.456))Definindo a largura do campo
Um número antes do ponto define a largura do campo mínima. %5d preenche o inteiro até que ele tenha pelo menos cinco caracteres, usando espaços.
Isso ajuda a alinhar números em colunas.
print(string.format("[%5d]", 42))
print(string.format("[%-5d]", 42))Preenchendo com zeros
Adicione um 0 depois do % para preencher com zeros em vez de espaços. %03d transforma 7 em 007.
Isso é ótimo para mostradores de relógio e identificadores preenchidos com zeros.
print(string.format("%02d:%02d", 9, 5))Combinando números e texto
Você pode combinar vários marcadores de posição em um único modelo, incluindo %s para textos.
Os valores são associados aos marcadores de posição na ordem em que aparecem, da esquerda para a direita.
print(string.format("%s has %d points", "Ada", 95))Concatenação com tostring
Para uma saída simples, você também pode transformar um número em texto com tostring() e juntá-lo usando o operador ...
Isso oferece menos controle que string.format, mas é rápido para mensagens básicas.
local n = 7
print("Value is " .. tostring(n))Hexadecimal e outras bases
string.format também pode exibir inteiros em outras bases. Use %x para hexadecimal em minúsculas e %X para maiúsculas.
Isso é útil ao trabalhar com cores ou valores de baixo nível.
print(string.format("%x", 255))
print(string.format("%X", 255))Verificação rápida
Teste seus conhecimentos de formatação de números.
Recapitulação
Você aprendeu a formatar números com string.format() usando marcadores de posição como %d, %f e %x.
A precisão (%.2f), a largura do campo (%5d) e o preenchimento com zeros (%03d) oferecem controle preciso, enquanto tostring() com .. resolve casos rápidos.
Você concluiu a lição sobre números e matemática em Lua. Excelente trabalho!
Perguntas Frequentes
A aula “Formatação de números” é grátis?
Sim — o texto completo de “Formatação de números” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Lua Academy, atualize para CoddyKit PRO. O curso de Lua Academy inclui 4 aulas no total.
O que vou aprender em “Formatação de números”?
Exiba números de forma elegante. Você pratica Lua Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Lua Academy?
Nenhuma experiência prévia é necessária. Lua Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Formatação de números”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Lua Academy?
Sim. Cada aula de Lua Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Inteiros e números de ponto flutuante
- Operadores aritméticos
- A biblioteca math
- Formatação de números