Partilhar via


/ Operador (Visual Basic)

Divide dois números e retorna um resultado de vírgula 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 não assinados e de vírgula flutuante e Decimal.

Result

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 de operandos. A tabela a seguir mostra como o tipo de dados do resultado é determinado.

Tipos de dados de operando Tipo 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 Single e a outra não é um Double Single
Uma expressão é um tipo de dados decimal e a outra não é um Single ou um Double Decimal
Qualquer expressão é um tipo de dados Double Double

Antes da divisão ser realizada, 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 de Double para esse tipo. Isso pode gerar uma exceção se o resultado não se encaixar nesse tipo. Em particular, consulte "Tentativa de divisão por zero" nesta página de Ajuda.

Se expression1 ou expression2 avalia como Nada, é 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 comportamentos possíveis.

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

Nota

O / operador pode estar 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 seu código usa esse operador em tal classe ou estrutura, certifique-se de entender seu comportamento redefinido. Para obter mais informações, consulte Procedimentos do 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), mesmo que ambos os operandos sejam constantes inteiras.

Consulte também