JAVA: การเปรียบเทียบค่า double ในภาษา java

package how2dev;
public class how2dev {
    public static void main(String[] args) {
           double a = 9.00;
           double v = 0.00;
           while (true) // ให้ เข้า loop ก่อน เสมอแล้ว ค่อยใช้ break ใน loop
           {
               if ( a-(v*v) < 0.0001) // ใช้เครื่องหมายเท่ากับไม่ได้ ต้องเอามาหักลบกัน แล้วเอาค่าน้อย ๆ เพื่อจะได้ค่าใกล้เคียงสุด
               {
                   break;	// ออกจาก while loop
               }
            r = r + 0.01;
           }
           System.out.printf("%.2f",v); // ใช้ printf แทน print ธรรมดา เพื่อจะกำหนดว่า เอาทศนิยม 2 ตำแหน่ง 
    }    
}

การ เปรียบเทียบ ทศนิยมในภาษา java เนื่องจาก java ไม่สามารถเปรียบเทียบทศนิยม ตรง ๆ ได้ เพราะว่า program จะเป็นค่าเป็นค่าโดยประมาณ เช่น 5 .0 ใน program จะเก็บค่า 4.999999999999 จึงจำเป็นต้องใช้วิธีการเปรียบเทียบ คือเอามาลบแล้วผลต่าง น้อยสุด

Leave a Comment

Your email address will not be published. Required fields are marked *