Operador módulo
Parte de la sección Fundamentos del Journey de PHP de Coddy. Lección 16 de 71.
El operador módulo (%) devuelve el resto después de una división. Cuando divides un número entre otro, el módulo te da lo que sobra.
<?php
echo 10 % 3; // Salida: 1
?>Aquí, 10 dividido entre 3 es igual a 3 con un resto de 1. El operador módulo devuelve ese resto.
Un uso común del módulo es comprobar si un número es par o impar. Al dividir entre 2, el resto es 0 si el número es par y 1 si es impar (-1 si el número impar es negativo), así que, si un número dividido entre 2 no tiene resto, es par; de lo contrario, es impar:
<?php
$number = 8;
echo $number % 2; // Salida: 0 (par)
$number = 7;
echo $number % 2; // Salida: 1 (impar)
?>Esto solo funciona para comprobar si un número es par o impar porque dividir entre 2 siempre da un resto de 0 o 1 (o -1 para un número impar negativo). Con otros divisores, cuando ambos números son positivos, el resto puede ser cualquier valor desde 0 hasta uno menos que el divisor. El resultado tiene el signo del número que se está dividiendo, así que -17 % 5 es -2.
Más ejemplos para ayudarte a entender el patrón:
<?php
echo 15 % 4; // Devuelve: 3 (15 = 4*3 + 3)
echo 20 % 5; // Devuelve: 0 (20 = 5*4 + 0)
$dividend = 17;
$divisor = 5;
echo $dividend % $divisor; // Devuelve: 2 (17 = 5*3 + 2)
?>Desafío
FácilLee dos números de la entrada: un dividendo y un divisor.
Calcula e imprime el resto cuando el primer número se divide entre el segundo.
Ejemplo:
Si las entradas son 17 y 5, la salida debe ser 2 (porque 17 ÷ 5 = 3 con un resto de 2).
Pruébalo tú mismo
<?php
// Lee la entrada
$dividend = intval(fgets(STDIN));
$divisor = intval(fgets(STDIN));
// TODO: Escribe tu código a continuación para calcular el resto
// Muestra el resultado
echo $remainder;
?>Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
1Introducción a PHP
El lenguaje PHP¡Hola, mundo!Etiquetas e instruccionesComentariosEl salto de línea4Operadores de comparación y lógicos
Operadores de comparaciónIgualdad e identidadOperadores lógicos, parte 1Operadores lógicos, parte 2Repaso: lógica simple2Variables y tipos de datos
NúmerosCadenas y comillasBooleanosConvenciones de nomenclaturaRepaso: inicialización de variablesVariables vacíasConcatenación de cadenasObtener datos del usuarioConvertir a otros tipos5Lógica condicional
Sentencia ifIf - elseEl operador ternarioOperador de coalescencia nulaSentencia switchRepaso: tomar decisiones3Operadores básicos
Operadores aritméticosOperador móduloOperador de exponenciaciónAsignación compuestaIncremento/decrementoPrecedencia de operadoresRepaso: cálculos sencillosOperadores de cadenasPractica por tu cuenta: Compilador de PHP online