Função Mod no MATLAB

click fraud protection

Às vezes, durante um cálculo de divisão, o restante é mais interessante do que o quociente inteiro. Por exemplo, ao dividir 17 por três, o restante de dois pode ser mais importante saber do que o quociente inteiro de cinco. Uma das milhares de funções integradas no programa de software matemático MATLAB é o "mod" comando, abreviação de "módulo". A função "mod" calcula diretamente o resto de uma divisão Operação.

Exemplo de Mod

Suponha que João tenha 17 maçãs e deseja dividi-las o mais uniformemente possível entre ele e dois amigos, de modo que todos tenham o mesmo número de maçãs. Quantas maçãs vão sobrar? Resolva o problema com esta linha de código MATLAB:

Vídeo do dia

Mod (17,3)

O MATLAB lê o código, divide 17 por três e diz a John que sobrarão duas maçãs.

Mod Versus Rem

Uma função intimamente relacionada a "mod" é a função "rem" do MATLAB, abreviação de "resto". Um possivel armadilha para o uso incorreto da função "mod" é que a resposta sempre mantém o sinal do divisor. Por exemplo,

Mod (-17,3)

retorna dois positivos, porque o três é positivo. Se um cálculo de divisão exigir o sinal correto na resposta, use a "função rem" como esta:

Rem (-17,3)

Neste caso, o MATLAB produzirá dois negativos.

Algumas regras mod

Existem algumas regras que um usuário do MATLAB deve saber ao usar a função "mod", a maioria das quais segue as regras básicas de divisão:

Primeiro, "mod (X, 0)" retorna "X", em vez de erro. Em segundo lugar, "mod (X, X)" retorna "0". Terceiro, "mod (X, Y)" terá o mesmo sinal de "Y", desde que "X" e "Y" não sejam iguais e "Y" não seja zero. Por último, "mod (X, Y)" e "rem (X, Y)" são iguais se "X" e "Y" compartilham o mesmo sinal, mas diferem por "Y" de outra forma.

Use para congruência

Na aritmética modular, dois números são "mod n congruente" se, quando divididos por "n", eles têm o mesmo resto. Outra maneira de dizer isso é depois de adicionar ou subtrair múltiplos de "n" a um número, você pode acabar no outro. Por exemplo, 6h e 18h são "mod congruente 12", porque adicionar 12 a um resulta no outro. Convertendo 18h00 a 1800 no tempo militar, o código a seguir é avaliado como "verdadeiro" e prova sua congruência usando o comando "mod" do MATLAB:

Mod (6,12) == Mod (18,12)