Usando o Operador Modulus (%) em Bash

Usando o Operador Modulus (%) em Bash

Na programação, módulo ou restante é a operação que retorna o restante de uma divisão. Em Bash, o operador do módulo é representado pelo símbolo %. O operador do módulo é comumente usado na programação para verificar se um número é divisível por outro número ou para executar operações que exigem um padrão cíclico. Neste artigo, exploraremos como usar o operador do módulo em bash.

Sintaxe:

A sintaxe do operador do módulo em Bash é a seguinte:

expr num1 % num2
1expr num1 % num2

Onde Num1 e Num2 Os dois números estão sendo operados em. O símbolo % representa o operador do módulo.

Exemplo 1: Verificação se um número é par ou estranho

O operador do módulo pode ser usado para determinar se um número é par ou estranho. Um número par é um divisível por 2, enquanto um número ímpar não é. O código a seguir verifica se um número é par ou ímpar:

num = 10 se [$ (expr $ num % 2) -eq 0] então echo "$ num é" else eco "$ num é ímpar" fi #output: 10 é par
123456789num = 10if [$ (expr $ NUM % 2) -EQ 0] Então echo "$ num é" else eco "$ num é ímpar" fi #output: 10 é par

Exemplo 2: Gerando um padrão cíclico

O operador do módulo também pode ser usado para gerar um padrão cíclico. Por exemplo, se você deseja imprimir números de 1 a 10 repetidamente em um padrão cíclico, poderá usar o seguinte código:

para i em 1… 20; ECHO $ ​​((i % 10 + 1)) #Output: 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10
12345para i em 1… 20; ECHO $ ​​((i % 10 + 1)) #Output: 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10

Exemplo 3: Verificação do ano bisseiro

O operador do módulo pode ser usado para verificar se um ano é um ano bissexto. Um ano bissexto é um ano divisível em 4, exceto em anos divisíveis por 100, mas não por 400. O código a seguir verifica se um ano é um ano bissexto:

ano = 2024 se [$ (expr $ ano % 4) -eq 0 -a $ (expr $ ano % 100) -ne 0 -o $ (expr $ ano % 400) -eq 0] Então echo "$ ano é um Ano bissealho "else Echo" $ ano não é um ano bisseiro "FI #Output: 2024 é um ano bissexto
123456789ano = 2024if [$ (expr $ ano % 4) -eq 0 -a $ (expr $ ano % 100) -ne 0 -o $ (expr $ ano % 400) -eq 0] Então echo "$ ano é um salto ano "else Echo" $ ano não é um ano bisseiro "FI #Output: 2024 é um ano bissexto

Exemplo 4: calcular o restante

O operador do módulo pode ser usado para calcular o restante de uma divisão. O código a seguir calcula o restante da divisão de 10 por 3:

eco $ (expr 10 % 3) #Output: 1
123eco $ (expr 10 % 3) #Output: 1

Exemplo 5: Verificação da divisibilidade

O operador do módulo pode ser usado para verificar se um número é divisível por outro número. O código a seguir verifica se 10 é divisível por 5:

Se [$ (expr 10 % 5) -eq 0] Então o echo "10 é divisível por 5" else eco "10 não é divisível por 5" fi #output: 10 é divisível por 5
12345678Se [$ (expr 10 % 5) -eq 0] Então o echo "10 é divisível por 5" else eco "10 não é divisível por 5" fi #output: 10 é divisível por 5

Conclusão

Neste artigo, exploramos como usar o operador do módulo em bash. Vimos como o operador do módulo pode ser usado para determinar se um número é par ou ímpar, gerar um padrão cíclico, verificar o ano bissexto, calcular o restante e verificar a divisibilidade. O operador do módulo é uma ferramenta poderosa na programação que pode ser usada de muitas maneiras diferentes. Compreender como usar o operador do módulo em Bash é essencial para escrever scripts de bash eficientes e eficazes.