/ (Operador, Visual Basic)
Divide dos números y devuelve un resultado de coma flotante.
Sintaxis
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 y sin signo y Decimal .
Resultado
El resultado es el cociente completo de expression1 dividido por , incluido cualquier expression2 resto.
El operador \ (Visual Basic) devuelve el cociente entero, que quita el resto.
Comentarios
El tipo de datos del resultado depende de los tipos de 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 result |
|---|---|
| Ambas expresiones son tipos de datos enteros(SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong) | Double |
| Una expresión es un tipo de datos single y la otra no es double. | Single |
| Una expresión es un tipo de datos Decimal y la otra no es single o double. | Decimal |
| Cualquiera de las expresiones es un tipo de datos Double | Double |
Antes de realizar la división, las expresiones numéricas integrales se amplían a Double . Si asigna el resultado a un tipo de datos entero, Visual Basic intentar convertir el resultado Double de a ese tipo. Esto puede producir una excepción si el resultado no cabe en ese tipo. En concreto, consulte "Attempted Division by Zero" (Intento de división por cero) en esta página de Ayuda.
Si expression1 o se evalúa como expression2 Nothing, se trata como cero.
Intento de división por cero
Si expression2 se evalúa como cero, el operador se comporta de forma diferente para los / distintos tipos de datos de operando. En la tabla siguiente 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 un número) si expression1 también es cero |
Decimal |
Lanza DivideByZeroException |
| Entero (con signo o sin signo) | El intento de conversión de nuevo al tipo entero se produce porque los OverflowException tipos enteros no pueden aceptar PositiveInfinity , NegativeInfinity o NaN |
Nota
El / operador se puede sobrecargar, lo que significa que una clase o estructura puede volver a definir su comportamiento cuando un operando tiene el tipo de esa clase o estructura. Si el código usa este operador en dicha clase o estructura, asegúrese de que comprende su comportamiento redefinido. Para obtener más información, consulta Operator Procedures.
Ejemplo
En este ejemplo se usa / el operador para realizar la división de punto flotante. El resultado es el cociente de los dos operandos.
Dim resultValue As Double
resultValue = 10 / 4
resultValue = 10 / 3
Las expresiones del ejemplo anterior devuelven valores de 2,5 y 3,333333. Tenga en cuenta que el resultado siempre es de punto flotante ( ), aunque Double ambos operandos sean constantes de entero.