Share via


Int, Fix (Funciones, Visual Basic)

Actualización: noviembre 2007

Devuelven la parte entera de un número.

Public Shared Function Int( _
    ByVal Number As { Double | Integer | Long | Object | Short | Single | Decimal }) _
    As { Double | Integer | Long | Object | Short | Single | Decimal }
Public Shared Function Fix( _
    ByVal Number As { Double | Integer | Long | Object | Short | Single | Decimal }) _
    As { Double | Integer | Long | Object | Short | Single | Decimal }

Parámetros

  • Number
    Requerido. Un número de tipo Double o cualquier expresión numérica válida. Si Number contiene Nothing, se devolverá Nothing.

Excepciones

Tipo de excepción

Número de error

Condición

ArgumentNullException

No se ha especificado Number.

ArgumentException

Number no es un tipo numérico.

Consulte la columna "Número de error" si está actualizando aplicaciones de Visual Basic 6.0 que utilizan el control de errores no estructurado. (Se puede comparar el número de error con respecto a Number (Propiedad, objeto Err)). Sin embargo, siempre que sea posible, se debe considerar la sustitución de dicho control de errores por Información general sobre el control estructurado de excepciones de Visual Basic.

Comentarios

Las funciones Int y Fix quitan la parte fraccionaria de Number y devuelven el valor entero resultante.

La diferencia entre las funciones Int y Fix es que si el valor Number es negativo, Int devuelve el primer entero negativo menor o igual que Number, mientras que Fix devuelve el primer entero negativo mayor o igual que Number. Por ejemplo, Int convierte -8,4 en -9 y Fix convierte -8,4 en -8.

Fix(number)equivale aSign(number) * Int(Abs(number)).

Ejemplo

En este ejemplo se muestra cómo las funciones Int y Fix devuelven las partes enteras de los números. En el caso de un argumento de número negativo, la función Int devuelve el primer entero negativo igual o menor que el número, y la función Fix devuelve el primer entero negativo igual o mayor que el número. En el siguiente ejemplo se requiere especificar Option Strict Off porque no se permiten las conversiones implícitas de tipo Double a tipo Integer en Option Strict On:

' This code requires Option Strict Off
Dim MyNumber As Integer
MyNumber = Int(99.8)   ' Returns 99.
MyNumber = Fix(99.8)   ' Returns 99.

MyNumber = Int(-99.8)  ' Returns -100.
MyNumber = Fix(-99.8)  ' Returns -99.

MyNumber = Int(-99.2)  ' Returns -100.
MyNumber = Fix(-99.2)  ' Returns -99.

Puede utilizar la función CInt para convertir explícitamente otros tipos de datos al tipo Integer con Option Strict Off. Sin embargo, CInt se redondea al entero más próximo en lugar de truncar la parte fraccionaria de los números. Por ejemplo:

MyNumber = CInt(99.8)    ' Returns 100.
MyNumber = CInt(-99.8)   ' Returns -100.
MyNumber = CInt(-99.2)   ' Returns -99.

Puede utilizar la función CInt en el resultado de una llamada a Fix o Int para realizar la conversión explícita al valor entero sin redondear. Por ejemplo:

MyNumber = CInt(Fix(99.8))   ' Returns 99.
MyNumber = CInt(Int(99.8))   ' Returns 99.

Para obtener más información sobre CInt, vea Funciones de conversión de tipos.

Requisitos

Espacio de nombres:Microsoft.VisualBasic

**Módulo:**Conversion

**Ensamblado:**Visual Basic Runtime Library (en Microsoft.VisualBasic.dll)

Vea también

Referencia

Funciones de conversión de tipos

Integer (Tipo de datos, Visual Basic)

Resumen de funciones matemáticas

Funciones matemáticas (Visual Basic)

Resumen de conversión

ArgumentNullException