Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Math.Round (Método) (Double, Int32, MidpointRounding)

Redondea un valor de punto flotante de precisión doble al número especificado de dígitos fraccionarios. Un parámetro especifica el redondeo del valor si está a la mitad del intervalo entre dos números.

Espacio de nombres:  System
Ensamblado:  mscorlib (en mscorlib.dll)

public static double Round(
	double value,
	int digits,
	MidpointRounding mode
)

Parámetros

value
Tipo: System.Double
Número de punto flotante de precisión doble que se va a redondear.
digits
Tipo: System.Int32
Número de dígitos fraccionarios del valor devuelto.
mode
Tipo: System.MidpointRounding
Especificación sobre el redondeo de value si se encuentra a la mitad del intervalo comprendido entre otros dos números.

Valor devuelto

Tipo: System.Double
Número más cercano a value que contiene varios dígitos fraccionarios iguales a digits. Si value tiene menos dígitos fraccionarios que digits, value se devuelve sin modificar.

ExcepciónCondición
ArgumentOutOfRangeException

digits es menor que 0 o mayor que 15.

ArgumentException

mode no es un valor válido de System.MidpointRounding.

NotaNota

Para obtener información y ejemplos completa de uso acerca de ésta y otras sobrecargas del método de Round , vea la página de referencia de Round .

Notas para los llamadores

Debido a la pérdida de precisión que puede ser resultado de representar valores decimales como números de punto flotante o realizar las operaciones aritméticas en valores de coma flotante, puede que en algunos casos el método Round(Double, Int32, MidpointRounding) no parezca que redondea los valores de punto medio como especifica el parámetro mode. Esto se muestra en el siguiente ejemplo, donde 2,135 se redondea a 2,13 en lugar de 2,14. Esto ocurre porque internamente el método multiplica value por 10dígitos, y la operación de multiplicación en este caso sufre de una pérdida de precisión.


using System;

public class Example
{
   public static void Main()
   {
      double[] values = { 2.125, 2.135, 2.145, 3.125, 3.135, 3.145 };
      foreach (double value in values)
         Console.WriteLine("{0} --> {1}", value, 
                           Math.Round(value, 2, MidpointRounding.AwayFromZero));

   }
}
// The example displays the following output:
//       2.125 --> 2.13
//       2.135 --> 2.13
//       2.145 --> 2.15
//       3.125 --> 3.13
//       3.135 --> 3.14
//       3.145 --> 3.15


.NET Framework

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Biblioteca de clases portable

Compatible con: Biblioteca de clases portable

.NET para aplicaciones de la Tienda Windows

Compatible con: Windows 8

.NET para aplicaciones de Windows Phone

Compatible con: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft