Descargar el PDF Descargar el PDF

Este wikiHow te mostrará tres formas de hacer números decimales en Java. Si quieres dividir dos enteros (números no decimales) y obtener una respuesta no redondeada, convierte uno de los operandos al doble. Para dividir dos decimales (o un entero por un decimal, o viceversa), puedes utilizar una división doble simple para garantizar un resultado decimal. Al trabajar con números más grandes o números que deban ser extremadamente exactos, puedes utilizar la clase BigDecimal Java en lugar de la aritmética de punto flotante. [1]

1

Obtén un resultado decimal a partir de dos números enteros

Descargar el PDF
  1. Si dividir dos números enteros da como resultado un resto, este se descarta, dejándote con un número entero como respuesta. Si necesitas dividir dos enteros y obtener un resultado decimal, puedes duplicar el numerador o denominador antes de realizar la operación. [2] . En este ejemplo duplicaremos a para obtener un resultado decimal:
     int 
     a 
     = 
     55 
     ; 
     int 
     b 
     = 
     25 
     ; 
     double 
     r 
     = 
     ( 
     double 
     ) 
     a 
     / 
     b 
     // La respuesta es 2,2. 
    
    Anuncio
2

Divide dos números decimales (dobles)

Descargar el PDF
  1. [3] De manera similar, si uno de ambos operandos es un número entero (un número no decimal), el resultado seguirá siendo un decimal si se duplica el otro operando. Este es un ejemplo de dividir dos decimales utilizando una doble división:
     double 
     x 
     = 
     10.5 
     ; 
     double 
     y 
     = 
     2.5 
     ; 
     x 
     / 
     y 
     // La respuesta es 4,2 
    
3

Obtener los resultados decimales más precisos con BigDecimal

Descargar el PDF
  1. La aritmética de punto flotante (que es lo que haces con la duplicación ) es menos precisa, pues la duplicación almacena números como representaciones binarias de fracciones y exponentes en lugar de representaciones exactas (números de punto fijo). [4] Para asegurarte de trabajar con números de punto fijo, utiliza BigDecimal . En este ejemplo, emplearemos BigDecimal para dividir dos números y obtener un resultado preciso:
     BigDecimal 
     bdec 
     = 
     new 
     BigDecimal 
     ( 
     "706" 
     ); 
     BigDecimal 
     bdecRes 
     = 
     bdec 
     . 
     divide 
     ( 
     new 
     BigDecimal 
     ( 
     "20" 
     )); 
     System 
     . 
     out 
     . 
     println 
     ( 
     "Divide: " 
     + 
     bdecRes 
     ); 
     // Divide con MathContext 
     MathContext 
     mc 
     = 
     new 
     MathContext 
     ( 
     2 
     , 
     RoundingMode 
     . 
     FLOOR 
     ); 
     BigDecimal 
     bdecMath 
     = 
     bdec 
     . 
     divide 
     ( 
     new 
     BigDecimal 
     ( 
     "20" 
     ), 
     mc 
     ); 
     System 
     . 
     out 
     . 
     println 
     ( 
     "Divide with MathContext: " 
     + 
     bdecMath 
     ); 
     // El primer resultado será 45,25, y el segundo, 45. 
    
    • Al utilizar BigDecimal, necesitarás especificar el RoundingMode para el resultado, el cual puede ser UP (lejos de cero), DOWN (hacia cero), CEILING (hacia infinito positivo), FLOOR (hacia infinito negativo), HALF_UP (hacia el vecino más cercano o hacia arriba si ambos vecinos son iguales), HALF_DOWN (hacia el vecino más cercano o hacia abajo si es igual), HALF_EVEN (hacia el vecino más cercano o hacia el vecino par más cercano si es igual), o UNNECESSARY (el resultado debe ser exacto). [5]
    Anuncio

Acerca de este wikiHow

Esta página ha recibido 251 visitas.

¿Te ayudó este artículo?

Anuncio