Gracias por A2A,
El algoritmo de división de Euclides para el resto no negativo no se sigue en los lenguajes de programación C porque el lenguaje de programación C sigue al operador % (que devuelve un resultado negativo para algunas entradas) pero no al operador del módulo (que devuelve un resultado no negativo).
Ahora en tu ejemplo,
-7% 2 = -1 (resto)
- Una compañía naviera necesita una caja en la que la longitud es (w + 3) y la altura es (w-2). Si el volumen debe ser de 1800 pulgadas cúbicas, ¿cuáles son las dimensiones?
- ¿Hasta dónde puedes llegar en matemáticas, antes de que necesites permitir números inconfundibles?
- ¿Cuántas veces se pueden poner 24 personas en grupos de 4 y no estar con la misma persona?
- Cómo encontrar todas las combinaciones únicas de longitud N en una lista de longitud K
- El producto de dos números es 392. El cociente de los dos números es 2. ¿Cuáles son los dos números?
porque si sigues las matemáticas simples,
2 * -3 = -6
-7 – (- 6) = -1 (resto)
Similar,
7% -2 = 1
aquí también si el dividendo es positivo, entonces tenemos que hacer que el valor sea positivo para restar como
-2 * -3 = 6
7–6 = 1 (resto)
En informática, es el operador restante el que generalmente se indica mediante “%” (por ejemplo, en C, C ++, Java, JavaScript, Perl, Python y Scala ) o “mod” (por ejemplo, en Pascal, BASIC, SQL, Haskell, ABAP y MATLAB ) con excepciones (por ejemplo, Excel). Estos operadores se pronuncian comúnmente como “mod”, pero se calcula específicamente un resto (ya que en C ++ se devolverá un número negativo si el primer argumento es negativo, y en Python se devolverá un número negativo si el segundo argumento es negativo). La función módulo en lugar de mod , como 38 × 14 (módulo 12) a veces se usa para indicar el residuo común en lugar de un resto. Por ejemplo, el lenguaje de programación Ruby tiene tanto módulo como resto.