2017-05-03 3 views
0

Nun, ich mache diese Operationen in einem Programm in JavaProblem mit dem Dezimal-Teil einer Anzahl Java

public class results{ 
    public static void main(String args[]){ 
     double x=Math.sqrt(1/8); 
     double x2 = x*2; 
     System.out.println(x); 
     System.out.println(x2); 
    } 
} 

Das Problem ist die Variable x. Es druckt 0.0 und Variable x2 0.0. Das Ergebnis von x ist 0.353553. Wie behebt man das, um die 0.353553 anstelle der 0.0 in Variable x zu verwenden.

+2

Verwendung 1.0/8 oder (double) 1/8 oder 0,125 – Eran

+0

Bitte klicken Sie auf das Häkchen auf der linken Seite der richtigen Antwort – Obenland

Antwort

4

1/8 ist eine Ganzzahl-Division. Das Ergebnis ist 0, also ist alles null. Versuchen Sie stattdessen 1/8.0 oder 0.125.

+0

danke !!! es funktioniert – Wolvy

+0

Gern geschehen. Bitte akzeptiere meine Antwort, um diese Frage als gelöst zu markieren. Vielen Dank. – Obenland

+0

Sie können auch '1f/8f' oder' 1d/8d' verwenden, um anzugeben, dass diese Zahlen nicht als Ganzzahlen gedacht sind – Oneiros

0

Sie können dieses Problem lösen, dass 1d geteilt durch 8d.

double x=Math.sqrt(1d/8d); 
double x2 = x*2d;