Cómo calcular el resto (%) de una división en Bash

Cómo calcular el resto (%) de una división en Bash

En la programación, encontrar el resto de una división es una tarea común. En Bash, el "%" del operador del módulo se puede usar para calcular el resto de una división. Sin embargo, la salida del operador del módulo puede ser negativa cuando se trata de números negativos. Por lo tanto, es importante comprender cómo manejar los números negativos al calcular el resto en Bash.

En este artículo, discutiremos cómo calcular el resto de una división en Bash y cómo manejar números negativos.

Método 1: Uso del operador del módulo (%)

El operador del módulo, representado por el símbolo De %, es un operador binario que devuelve el resto de la operación de división. Para calcular el resto utilizando el operador del módulo, simplemente use el operador entre el dividendo y el divisor. Aquí hay un ejemplo:

Echo $ ((15 % 4))  Salida: 3 

En el ejemplo anterior, utilizamos el operador del módulo para calcular el resto cuando 15 se divide por 4. El resultado es un valor entero de 3.

Método 2: Uso del comando expr

El comando expr es una calculadora de línea de comandos que puede realizar varias operaciones matemáticas, incluida la operación restante. Para calcular el resto utilizando el comando expr, use la palabra clave mod seguido del dividendo y divisor separado por un espacio. Aquí hay un ejemplo:

Expr 15 % 4  Salida: 3 

En el ejemplo anterior, utilizamos el comando expr para calcular el resto cuando 15 se divide por 4. El resultado es un valor entero de 3.

Método 3: Uso del comando BC

El comando BC es una calculadora de línea de comandos que admite aritmética de precisión arbitraria y puede realizar varias operaciones matemáticas, incluida la operación restante. Para calcular el resto utilizando el comando BC, use el operador % seguido por el dividendo y el divisor separado por un espacio. Aquí hay un ejemplo:

Echo "15 % 4" | antes de Cristo  Salida: 3 

En el ejemplo anterior, utilizamos el comando ECHO para enviar la expresión matemática 15 % 4 al comando BC, que luego devolvió el resto como un valor entero de 3.

Método 4: Uso del comando AWK

El comando AWK es una poderosa herramienta de procesamiento de texto que también puede realizar operaciones matemáticas. Para calcular el resto utilizando el comando AWK, use el % del operador de módulo seguido del dividendo y divisor separado por un espacio dentro del comando AWK. Aquí hay un ejemplo:

Echo "15 4" | Awk 'imprimir $ 1 % $ 2'  Salida: 3 

En el ejemplo anterior, utilizamos el comando echo para enviar el dividendo y el divisor como una cadena separada por el espacio al comando AWK. Luego, utilizamos el operador de módulo dentro del comando AWK para calcular el resto cuando 15 se divide por 4. El resultado es un valor entero de 3.

Método 5: Uso de una función definida por el usuario

También podemos crear una función definida por el usuario para calcular el resto en Bash. Aquí hay un ejemplo:

#!/bin/bash función rester () dividend local = $ 1 divisor local = $ 2 resultado local = $ ((dividend % divisor)) echo $ resultado resto 15 4
12345678910#!/bin/bash función rester () dividend local = $ 1 divisor local = $ 2 resultado local = $ ((dividend % divisor)) echo $ resultado resto 15 4

En el ejemplo anterior, definimos una función llamada resto que toma dos argumentos dividendos y divisor. La función calcula el resto utilizando el operador de módulo y almacena el resultado en una variable local llamada resultado. Finalmente, la función imprime el resultado usando el comando echo.

Conclusión

Calcular el resto de una operación de división es una tarea común en la programación, y Bash proporciona varias formas de realizar esta operación. En este artículo, hemos discutido cinco métodos para calcular el resto en Bash, incluido el uso del operador de módulo, el comando expr, el comando BC, el comando AWK y una función definida por el usuario. Puede elegir el método que mejor se adapte a sus necesidades dependiendo de la complejidad de sus cálculos y los requisitos específicos de su código.

Vale la pena señalar que si bien estos métodos funcionan para los valores enteros, la operación de división para números de punto flotante requiere un enfoque diferente. En tales casos, se recomienda utilizar el comando BC, que admite aritmética de precisión arbitraria y puede manejar números de punto flotante con alta precisión.

En resumen, comprender cómo calcular el resto en Bash es una habilidad importante para cualquier programador que trabaje con datos numéricos. Al dominar los métodos descritos en este artículo, puede realizar operaciones restantes eficientes y precisas en sus scripts de bash y aplicaciones de línea de comandos.