Operador / (Visual Basic)
Divide dois números e retorna um resultado de ponto flutuante.
expression1 / expression2
Partes
expression1
Obrigatório. Qualquer expressão numérica.expression2
Obrigatório. Qualquer expressão numérica.
Os tipos suportados
Todos os tipos numéricos, incluindo os tipos unsigned e ponto-flutuante e Decimal
Resultado
O resultado é o quociente total de expression1 dividido por expression2, incluindo qualquer restante.
O Operador \ (Visual Basic) retorna o quociente inteiro, que ignora o resto.
Comentários
O tipo de dados do resultado depende do tipo dos operandos. A tabela a seguir mostra como o tipo de dados do resultado é determinado.
Tipo de dados dos operandos |
Tipo de dados do resultado |
---|---|
As duas expressões dão tipos de dados integrais (SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong). |
Double |
Uma expressão é um único tipo de dados e o outro não é um duplo |
Single |
Uma expressão é um Decimal tipo de dados e o outro não é um único ou um duplo |
Decimal |
Qualquer expressão for uma Double tipo de dados |
Double |
Antes de divisão que seja efetuada, qualquer integrante expressões numéricas são ampliados para Double. Se você atribuir o resultado a um tipo de dadosintegral, Visual Basic tenta converter o resultado da Double para esse tipo. Isso pode acionar uma exceção se o resultado não couber nesse tipo. Em particular, consulte " Tentativa de divisão por zero " nesta Página de Ajuda.
Se expression1 ou expression2 for avaliada como nada, ela é tratada como zero.
Tentativa de Divisão por Zero
Se expression2 for avaliada como zero, o operador / se comporta de forma diferente para operando diferentes tipos de dados. A tabela a seguir mostra os comportamentos possíveis.
Tipo de dados dos operandos |
Comportamento se expression2 for zero |
---|---|
Ponto flutuante (Single ou Double) |
Retorna infinito (PositiveInfinity ou NegativeInfinity), NaN (não é um número) se expression1 também for zero |
Decimal |
|
Integral (assinados ou não assinados) |
Tentativa de conversão de volta para tipo integral gera OverflowException porque tipos integrais não podem aceitar PositiveInfinity, NegativeInfinity, ou NaN |
Dica
O operador / pode ser sobrecarregado, o que significa que uma classe ou estrutura pode redefinir seu comportamento quando um operando tem o tipo daquela classe ou estrutura.Se seu código usa esse operador em tal classe ou estrutura, esteja certo que entende seu comportamento redefinido.Para obter mais informações, consulte Procedimentos do operador (Visual Basic).
Exemplo
Este exemplo usa o operador / para executar divisão de ponto flutuante. O resultado é o produto dos dois operandos.
Dim resultValue As Double
resultValue = 10 / 4
resultValue = 10 / 3
As expressões no exemplo anterior retornam valores de 2.5 and 3.333333. Observe que o resultado é sempre de ponto flutuante (Double), embora ambos os operandos sejam constantes inteiro.
Consulte também
Referência
Tipos de dados de resultados do operador (Visual Basic)
Operadores aritméticos (Visual Basic)
Precedência do operador no Visual Basic
Operadores listados por funcionalidade (Visual Basic)