/ (Operador, Visual Basic)

Divide dos números y devuelve un resultado de punto flotante.

expression1 / expression2

Partes

  • expression1
    Obligatorio. Cualquier expresión numérica.

  • expression2
    Obligatorio. Cualquier expresión numérica.

Tipos admitidos

Todos los tipos numéricos, incluidos los tipos de punto flotante, sin signo y Decimal.

Resultado

El resultado es el cociente completo de expression1 dividido por expression2, incluido cualquier resto.

\ (Operador, Visual Basic) devuelve el cociente entero, que omite el resto.

Comentarios

El tipo de datos del resultado depende de los tipos de los operandos. En la tabla siguiente se muestra cómo se determina el tipo de datos del resultado.

Tipos de datos de operando

Tipo de datos de resultado

Ambas expresiones son tipos de datos integrales (SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong)

Double

Una expresión es un tipo de datos Single numérico y la otra no es Double

Single

Una expresión es un tipo de datos Decimal y la otra no es Single ni Double

Decimal

Cualquier expresión es un tipo de datos Double

Double

Antes de que se realice la división, cualquier expresión numérica entera se amplía a Double. Si asigna el resultado a un tipo de datos entero, Visual Basic intenta convertir el resultado de Double a ese tipo. Esto puede producir una excepción si el resultado no se ajusta a ese tipo. Vea en particular "División por cero intentada" en esta página de Ayuda.

Si se evalúa expression1 o expression2 como Nothing, se trata como si fuese cero.

Intento de dividir por cero

Si se evalúa expression2 como cero, el operador / se comporta de manera diferente para los distintos tipos de datos de operando. En la siguiente tabla se muestran los posibles comportamientos.

Tipos de datos de operando

Comportamiento si expression2 es cero

Punto flotante (Single o Double)

Devuelve infinito (PositiveInfinity o NegativeInfinity) o NaN (no es un número) si expression1 también es cero

Decimal

Produce DivideByZeroException

Entero (con signo o sin signo)

La conversión intentada recuperando el tipo integral produce una OverflowException porque los tipos integrales no pueden aceptar PositiveInfinity, NegativeInfinity ni NaN

Nota

El operador / se puede sobrecargar, lo que significa que una clase o una estructura pueden definir de nuevo su comportamiento cuando un operando tiene el tipo de dicha clase o estructura. Si el código utiliza este operador en una clase o estructura de este tipo, asegúrese de conocer su comportamiento redefinido. Para obtener más información, vea Procedimientos de operador (Visual Basic).

Ejemplo

En este ejemplo se usa el operador / para realizar una división de punto flotante. El resultado será el cociente de ambos operandos.

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

Las expresiones en el ejemplo anterior devuelven valores de 2,5 y 3,333333. Observe que el resultado es siempre de punto flotante (Double), aunque ambos operandos sean constantes enteras.

Vea también

Referencia

/= (Operador, Visual Basic)

\ (Operador, Visual Basic)

Tipos de datos de resultados de operador (Visual Basic)

Operadores aritméticos (Visual Basic)

Prioridad de operador en Visual Basic

Operadores enumerados por funcionalidad (Visual Basic)

Conceptos

Operadores aritméticos en Visual Basic