Compartilhar via


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

Gera DivideByZeroException

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

Operador /= (Visual Basic)

Operador \ (Visual Basic)

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)

Conceitos

Operadores aritméticos no Visual Basic