Operador de Módulo
Parte da seção Fundamentals do Journey de Lua da Coddy — lição 13 de 90.
O operador módulo representado pelo símbolo de porcentagem %. Este operador encontra o resto que sobra após dividir um número por outro.
Em Lua, a palavra-chave
local declara uma variável local — uma que só existe dentro do bloco ou escopo atual. É uma boa prática usar local quando você não precisa que uma variável seja acessível em todos os lugares do seu programa.Veja como o operador módulo funciona:
result = 10 % 3 -- o resultado é 1 (10 dividido por 3 é 3 com resto 1)
result = 15 % 4 -- o resultado é 3 (15 dividido por 4 é 3 com resto 3)
result = 8 % 2 -- o resultado é 0 (8 dividido por 2 é 4 sem resto)Um dos usos mais práticos do operador módulo é determinar se um número é par ou ímpar. Quando você divide qualquer número por 2, se o resto for 0, o número é par. Se o resto for 1, o número é ímpar:
number = 7
remainder = number % 2 -- o resto é 1, então 7 é ímpar
number = 10
remainder = number % 2 -- o resto é 0, então 10 é parDesafio
FácilVerifique se a pontuação de um jogador é um múltiplo de 10 usando o operador módulo. Crie uma variável chamada playerScore e atribua a ela o valor 85. Em seguida, use o operador módulo para encontrar o resto da divisão da pontuação por 10 e armazene esse resultado em uma variável chamada remainder. Imprima o valor de remainder.
Folha de consulta
O operador módulo % encontra o resto após dividir um número por outro:
result = 10 % 3 -- o resultado é 1 (10 dividido por 3 é 3 com resto 1)
result = 15 % 4 -- o resultado é 3 (15 dividido por 4 é 3 com resto 3)
result = 8 % 2 -- o resultado é 0 (8 dividido por 2 é 4 sem resto)Use o módulo para verificar se um número é par ou ímpar:
number = 7
remainder = number % 2 -- o resto é 1, então 7 é ímpar
number = 10
remainder = number % 2 -- o resto é 0, então 10 é parExperimente você mesmo
-- Cria a variável playerScore e atribui a ela o valor 85
local playerScore = 85
-- TODO: Escreva seu código aqui para calcular o resto usando o operador módulo
-- Imprime o resto
print(remainder)Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentals
4Operadores 2 Relacionais e Lógicos
Operadores de IgualdadeOperadores RelacionaisO Operador 'and'O Operador 'or'O Operador 'not'Avaliação de Curto-CircuitoValores Truthy e FalsyRecapitulação - Lógica Simples7Lógica Condicional Básica
A instrução if-thenA instrução if-then-elseA instrução elseifRecapitulação - Baú do Tesouro2Variáveis e Tipos de Dados
O que é uma Variável?NúmerosStringsBooleanosO Valor 'nil'A Função type()Convenções de NomenclaturaRecapitulação - Perfil de Personagem5Saída Básica
Imprimindo LiteraisImprimindo VariáveisImprimindo Múltiplos ValoresCombinando Strings e VariáveisA Função tostring()EntradaCastRecapitulação - Relatório de StatusRecapitulação - Até 1208Fundamentos de Manipulação de Strings
string.len()string.upper & string.lowerstring.sub()string.rep()string.find()Revisão - Formatar Nome de Usuário3Operadores 1: Aritmética e Concatenação
Operadores AritméticosOperador de MóduloOperador de ExponenciaçãoConcatenação de StringsPrecedência de OperadoresRecapitulação - Cálculos Simples6Projeto: Exibição de Atributos do Personagem
Mensagem de Boas-vindasDeclarar Atributos do Personagem9Fundamentos de Funções
Declarando uma FunçãoChamando uma FunçãoFunções com ParâmetrosFunções com Múltiplos ParâmetrosA Instrução 'return'Recapitulação - Calculadora de Área