Operador Módulo
Parte da seção Fundamentos do Journey de PHP da Coddy. Lição 16 de 71.
O operador módulo (%) retorna o resto após a divisão. Quando você divide um número por outro, o módulo informa o que sobra.
<?php
echo 10 % 3; // Saída: 1
?>Aqui, 10 dividido por 3 é igual a 3, com resto 1. O operador módulo retorna esse resto.
Um uso comum do módulo é verificar se um número é par ou ímpar. Ao dividir por 2, os únicos restos possíveis são 0 ou 1; portanto, se um número dividido por 2 não tiver resto, ele é par; se o resto for 1, ele é ímpar:
<?php
$number = 8;
echo $number % 2; // Saída: 0 (par)
$number = 7;
echo $number % 2; // Saída: 1 (ímpar)
?>Isso só funciona para verificações de paridade porque dividir por 2 sempre resulta em um resto de 0 ou 1. Com outros divisores, o resto pode ter qualquer valor de 0 até um a menos que o divisor.
Mais exemplos para ajudar você a entender o padrão:
<?php
echo 15 % 4; // Saída: 3 (15 = 4*3 + 3)
echo 20 % 5; // Saída: 0 (20 = 5*4 + 0)
$dividend = 17;
$divisor = 5;
echo $dividend % $divisor; // Saída: 2 (17 = 5*3 + 2)
?>Desafio
FácilLeia dois números da entrada: um dividendo e um divisor.
Calcule e imprima o resto quando o primeiro número for dividido pelo segundo número.
Exemplo:
Se as entradas forem 17 e 5, a saída deverá ser 2 (porque 17 ÷ 5 = 3 com resto 2).
Experimente você mesmo
<?php
// Ler entrada
$dividend = intval(fgets(STDIN));
$divisor = intval(fgets(STDIN));
// TODO: Escreva seu código abaixo para calcular o resto
// Exibir o resultado
echo $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 Fundamentos
4Operadores de Comparação e Lógicos
Operadores de ComparaçãoIgualdade e IdentidadeOperadores Lógicos - Parte 1Operadores Lógicos - Parte 2Revisão - Lógica Simples2Variáveis e Tipos de Dados
NúmerosStrings e AspasBooleanosConvenções de NomenclaturaRevisão - Inicialização de VariáveisVariáveis VaziasConcatenação de StringsObtendo Entrada do UsuárioConversão para Diferentes Tipos5Lógica Condicional
Instrução IfIf - ElseO Operador TernárioOperador de Coalescência NulaInstrução SwitchRecapitulação - Tomando Decisões3Operadores Básicos
Operadores AritméticosOperador MóduloOperador de ExponenciaçãoAtribuição CombinadaIncremento/DecrementoPrecedência de OperadoresRevisão - Cálculos SimplesOperadores de StringPratique por conta própria: Compilador de PHP online