Compartilhar via


/ Operador (Visual Basic)

Divide dois números e retorna um resultado de ponto flutuante.

Sintaxe

expression1 / expression2  

Partes

expression1
Obrigatório Qualquer expressão numérica.

expression2
Obrigatório Qualquer expressão numérica.

Tipos Suportados

Todos os tipos numéricos, incluindo os tipos de ponto flutuante e sem sinal e Decimal.

Resultado

O resultado é o quociente completo de expression1 dividido por expression2, incluindo qualquer restante.

O operador \ (Visual Basic) retorna o quociente inteiro, que descarta o restante.

Observações

O tipo de dados do resultado depende dos tipos dos operandos. A tabela a seguir mostra como o tipo de dados do resultado é determinado.

Tipos de dados operando Tipos de dados de resultado
Ambas as expressões são tipos de dados integrais (SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong) Double
Uma expressão é um tipo de dados único e a outra não é um Double Single
Uma expressão é um tipo de dados Decimal e a outra não é um único ou um duplo Decimal
Qualquer expressão é um tipo de dados Double Double

Antes que a divisão seja executada, todas as expressões numéricas integrais são ampliadas para Double. Se você atribuir o resultado a um tipo de dados integral, o Visual Basic tentará converter o resultado desse Double tipo. Isso poderá gerar uma exceção se o resultado não se ajustar a esse tipo. Em particular, consulte "Tentativa de Divisão por Zero" nesta página de Ajuda.

Se expression1 ou expression2 for avaliado como Nothing, ele será tratado como zero.

Tentativa de Divisão por Zero

Se expression2 for avaliado como zero, o / operador se comportará de forma diferente para diferentes tipos de dados de operando. A tabela a seguir mostra os possíveis comportamentos.

Tipos de dados operando Comportamento se expression2 for zero
Ponto flutuante (Single ou Double) Retorna infinito (PositiveInfinity ou ), ou NaN (não um número) se expression1 também NegativeInfinityfor zero
Decimal Lança DivideByZeroException
Integral (assinado ou não assinado) A tentativa de conversão de volta para o tipo integral é gerada OverflowException porque os tipos integrais não podem aceitar PositiveInfinity, NegativeInfinityou NaN

Observação

O / operador pode ser sobrecarregado, o que significa que uma classe ou estrutura pode redefinir seu comportamento quando um operando tem o tipo dessa classe ou estrutura. Se o código usar esse operador em tal classe ou estrutura, certifique-se de entender seu comportamento redefinido. Para obter mais informações, consulte Procedimentos de Operador.

Exemplo

Este exemplo usa o / operador para executar a divisão de ponto flutuante. O resultado é o quociente dos dois operandos.

Dim resultValue As Double
resultValue = 10 / 4
resultValue = 10 / 3

As expressões no exemplo anterior retornam valores de 2,5 e 3,333333. Observe que o resultado é sempre ponto flutuante (Double), embora ambos os operandos sejam constantes inteiros.

Consulte também