Tenho vergonha de fazer uma pergunta tão simples. Meu mandato não começa por mais duas semanas, então não posso perguntar a um professor, e o suspense me mataria.
Em x / y, os resultados consistem em uma parte inteira e uma parte de fração. Se você multiplicar a parte da fração pelo divisor, obtém o restante. E x = Parte inteira y + Restante (isto é, parte da fração y). Neste caso Integer parte é 0, eo restante é 2.
mshsayem
76
feliz que você teve a coragem de fazer essa pergunta.
pave
o módulo está longe de ser igual a dividir dois números.
holex
Respostas:
151
Mod significa apenas que você fica com o restante após realizar a divisão. Como 4 entra em 2 zero vezes, você acaba com 2.
Muito mais fácil se você usar bananas e um grupo de pessoas.
Digamos que você tenha 1 banana e um grupo de 6 pessoas, isso você expressaria: 1 mod 6/ 1 % 6/ 1 modulo 6.
Você precisa de 6 bananas para que cada pessoa do grupo seja bem alimentada e feliz.
Portanto, se você tiver 1 banana e precisar compartilhá-la com 6 pessoas, mas você só poderá compartilhar se tiver 1 banana para cada membro do grupo, ou seja, 6 pessoas, terá 1 banana (o restante, não será compartilhado com ninguém) grupo), o mesmo vale para 2 bananas. Então você terá 2 bananas como restante (nada será compartilhado).
Mas quando você recebe 6 bananas, deve estar feliz, porque há 1 banana para cada membro do grupo de 6 pessoas e o restante é 0 ou nenhuma banana quando você compartilhou todas as 6 bananas em 6 pessoas.
Agora, para 7 bananas e 6 pessoas em grupo, você terá 7 mod 6 = 1, isso porque você deu a 6 pessoas 1 banana cada e 1 banana é o restante.
Para 12 mod 6ou 12 bananas compartilhadas em 6 pessoas, cada uma terá duas bananas e o restante será 0.
Alguém entrou em contato comigo e pediu que eu explicasse com mais detalhes minha resposta no comentário da pergunta. Então, aqui está o que eu respondi a essa pessoa, caso ela possa ajudar outra pessoa:
A operação do módulo fornece o restante da divisão euclidiana (que funciona apenas com números inteiros, e não reais). Se você tem A tal que A = B * C + D (com D <B), então o quociente da divisão euclidiana de A por B é C e o restante é D. Se você dividir 2 por 4, o quociente é 0 e o restante é 2.
Suponha que você tenha objetos A (que você não pode cortar). E você deseja distribuir a mesma quantidade desses objetos para as pessoas B. Contanto que você tenha mais de B objetos, dê 1 a cada um deles e repita. Quando você tem menos de B objetos, você para e mantém os objetos restantes. O número de vezes que você repetiu a operação, vamos chamar esse número C, é o quociente. O número de objetos que você mantém no final, vamos chamá-lo de D, é o restante.
Se você tem 2 objetos e 4 pessoas. Você já tem menos de 4 objetos. Então cada pessoa recebe 0 objetos e você mantém 2.
O operador do módulo é avaliado para o restante da divisão dos dois operandos inteiros. Aqui estão alguns exemplos:
23 % 10 evaluates to 3 (because 23/10 is 2 with a remainder of 3)
50 % 50 evaluates to 0 (50/50 is 1 with a remainder of 0)
9 % 100 evaluates to 9 (9/100 is 0 with a remainder of 9)
Módulo é o restante, expresso como um número inteiro, de uma expressão de divisão matemática.
Então, digamos que você tenha um pixel em uma tela na posição 90, em que a tela possui 100 pixels de largura e adicione 20, ela será posicionada em volta da posição 10. Por que ... porque 90 + 20 = 110, portanto, 110% 100 = 10.
Para eu entender, considero que o módulo é a representação inteira do número fracionário. Além disso, se você fizer a expressão para trás e processar o restante como um número fracionário e depois adicioná-lo ao divisor, ele fornecerá sua resposta original.
Exemplos:
100
(A) --- = 14 mod 2
7
123
(B) --- = 8 mod 3
15
3
(C) --- = 0 mod 3
4
MOD é o operador restante. É por isso que 2 mod 4 fornece 2 como restante. 4 * 0 = 0 e depois 2-0 = 2. Para tornar mais claro, tente fazer o mesmo com 6 mod 4 ou 8 mod 3.
Podemos usar essa pequena fórmula que eu inventei depois de pensar um pouco, talvez ela já esteja definida em algum lugar que eu não conheço, mas funcione para mim e seja realmente útil.
A mod B = C onde C é a resposta
K * B - A = |C| onde K é quantas vezes B se encaixa em A
Para uma maneira visual de pensar sobre isso, imagine um mostrador de relógio que, no seu exemplo particular, só vá para 4 em vez de 12. Se você começar às 4 no relógio (que é como começar no zero) e girar no sentido horário para 2 "horas", você pousa em 2, assim como girar no sentido horário por 6 "horas" também o pousará em 2 (6 mod 4 == 2, assim como 2 mod 4 == 2).
@ do3boy: a idéia da face do relógio é um método muito simples e fácil de descrever exatamente o fato do módulo. exceto que teria sido mais fácil usar o formato 24h para explicá-lo, em vez de modificar o número de posições disponíveis.
Atmocreations
0
Este pode ser um bom momento para mencionar a função modr (). Ele retorna as partes inteira e restante de uma divisão.
print("\n 17 // 3 =",17//3," # Does the same thing as int(17/3)")
print(" 17 % 3 =",17%3," # Modulo division gives the remainder.")
whole, remain = divmod(17,3)
print(" divmod(17,3) returns ->",divmod(17,3),end="")
print(" because 3 goes into 17,",whole,"times with a remainder of",remain,end=".\n\n")
2 = 0 * 4 + 2
.Respostas:
Mod significa apenas que você fica com o restante após realizar a divisão. Como 4 entra em 2 zero vezes, você acaba com 2.
fonte
Módulo é o restante, não divisão.
O sinal
%
é frequentemente usado para o operador do módulo, em vez da palavramod
.Para
x % 4
, você obtém a tabela a seguir (para 1-10)fonte
O módulo (mod,%) é o operador Restante.
fonte
Muito mais fácil se você usar bananas e um grupo de pessoas.
Digamos que você tenha 1 banana e um grupo de 6 pessoas, isso você expressaria:
1 mod 6
/1 % 6
/1 modulo 6
.Você precisa de 6 bananas para que cada pessoa do grupo seja bem alimentada e feliz.
Portanto, se você tiver 1 banana e precisar compartilhá-la com 6 pessoas, mas você só poderá compartilhar se tiver 1 banana para cada membro do grupo, ou seja, 6 pessoas, terá 1 banana (o restante, não será compartilhado com ninguém) grupo), o mesmo vale para 2 bananas. Então você terá 2 bananas como restante (nada será compartilhado).
Mas quando você recebe 6 bananas, deve estar feliz, porque há 1 banana para cada membro do grupo de 6 pessoas e o restante é 0 ou nenhuma banana quando você compartilhou todas as 6 bananas em 6 pessoas.
Agora, para 7 bananas e 6 pessoas em grupo, você terá
7 mod 6 = 1
, isso porque você deu a 6 pessoas 1 banana cada e 1 banana é o restante.Para
12 mod 6
ou 12 bananas compartilhadas em 6 pessoas, cada uma terá duas bananas e o restante será 0.fonte
2/4 = 0 com um resto de 2
fonte
Eu também estava confuso sobre isso, apenas alguns minutos atrás. Então eu fiz a divisão em um pedaço de papel e fez sentido:
Até onde o computador vai resolver esse problema. O computador pára por aí e retorna o 2, o que faz sentido, pois é o que "%" (mod) está pedindo.
Fomos treinados para colocar o decimal e continuar, e é por isso que isso pode ser contra-intuitivo no início.
fonte
Alguém entrou em contato comigo e pediu que eu explicasse com mais detalhes minha resposta no comentário da pergunta. Então, aqui está o que eu respondi a essa pessoa, caso ela possa ajudar outra pessoa:
fonte
O operador do módulo é avaliado para o restante da divisão dos dois operandos inteiros. Aqui estão alguns exemplos:
fonte
mod significa o alargador quando dividido por. Então 2 dividido por 4 é 0 com 2 restantes. Portanto 2 mod 4 é 2.
fonte
Módulo é o restante, expresso como um número inteiro, de uma expressão de divisão matemática.
Então, digamos que você tenha um pixel em uma tela na posição 90, em que a tela possui 100 pixels de largura e adicione 20, ela será posicionada em volta da posição 10. Por que ... porque 90 + 20 = 110, portanto, 110% 100 = 10.
Para eu entender, considero que o módulo é a representação inteira do número fracionário. Além disso, se você fizer a expressão para trás e processar o restante como um número fracionário e depois adicioná-lo ao divisor, ele fornecerá sua resposta original.
Exemplos:
Invertida projetada para:
fonte
Quando você divide 2 por 4, obtém 0 com 2 restantes ou restantes. Módulo é apenas o restante depois de dividir o número.
fonte
Eu acho que você está ficando confuso sobre como a equação do módulo é lida.
Quando escrevemos uma equação de divisão, como
2/4
estamos dividindo 2 por 4.Quando uma equação de módulo é escrita, como
2 % 4
estamos dividindo2 by 4
(pense 2 sobre 4) e retornando o restante.fonte
MOD é o operador restante. É por isso que 2 mod 4 fornece 2 como restante. 4 * 0 = 0 e depois 2-0 = 2. Para tornar mais claro, tente fazer o mesmo com 6 mod 4 ou 8 mod 3.
fonte
Este é o algoritmo Euclides.
por exemplo
a mod b = k * b + c => a mod b = c, onde k é um número inteiro ec é a resposta
4 mod 2 = 2 * 2 + 0 => 4 mod 2 = 0
27 mod 5 = 5 * 5 + 2 => 27 mod 5 = 2
então sua resposta é
2 mod 4 = 0 * 4 + 2 => 2 mod 4 = 2
fonte
Para:
2 mod 4
Podemos usar essa pequena fórmula que eu inventei depois de pensar um pouco, talvez ela já esteja definida em algum lugar que eu não conheço, mas funcione para mim e seja realmente útil.
A mod B = C
onde C é a respostaK * B - A = |C|
onde K é quantas vezes B se encaixa em A2 mod 4
seria:0 * 4 - 2 = |C|
C = |-2| => 2
Espero que funcione para você :)
fonte
A operação Mod funciona com lembrete.
Isso é chamado aritmética modular.
fonte
Para responder a um módulo
x % y
, faça duas perguntas:A- Quantas vezes
y
entrax
sem deixar resíduos? Para 2% 4, é 0.B- Quanto você precisa adicionar para voltar disso
x
? Para passar de 0 a 2, você precisará de 2-0, ou seja, 2.Eles podem ser resumidos em uma pergunta da seguinte forma: quanto você precisará adicionar ao resultado inteiro da divisão de
x
pory
, para voltarx
?Por número inteiro, entende-se apenas números inteiros e não frações que sejam de interesse.
Um restante de divisão fracionária (por exemplo, 283849) não é interessante no módulo porque o módulo lida apenas com números inteiros.
fonte
Para uma maneira visual de pensar sobre isso, imagine um mostrador de relógio que, no seu exemplo particular, só vá para 4 em vez de 12. Se você começar às 4 no relógio (que é como começar no zero) e girar no sentido horário para 2 "horas", você pousa em 2, assim como girar no sentido horário por 6 "horas" também o pousará em 2 (6 mod 4 == 2, assim como 2 mod 4 == 2).
fonte
Este pode ser um bom momento para mencionar a função modr (). Ele retorna as partes inteira e restante de uma divisão.
fonte