วันจันทร์ที่ 23 กุมภาพันธ์ พ.ศ. 2558

การใช้ nested if หรือ if else if ด้วย Java

          เป็นคำสั่งให้โปรแกรมเลือกทำงานในชุดคำสั่งใดคำสั่งหนึ่ง จากหลายทางเลือก และแต่ละทางเลือกจะมีการกำหนดนิพจน์ของแต่ละทางเลือกไว้ โดยโปรแกรมจะตรวจสอบนิพจน์ของแต่ละทางเลือก หากพบว่าถ้านิพจน์ที่กำหนดให้เป็นจริง โปรแกรมจะทำงานที่ชุดคำสั่งภายในทางเลือกนั้น โดยที่ไม่พิจารณาทางเลือกอื่นที่ยังไม่ได้ตรวจสอบอีก ซึ่งมีรูปแบบการทำงานดังนี้



     
         if (boolean_expression_1){        
                statements_1;
        }
        else if (boolean_expression_2){        
                statements_2;
                :
:  }
else{
                statements_n;
        }
        }



โดยที่  boolean_expression_1 : เป็นนิพจน์ที่เป็นเงื่อนไขทางตรรกศาสตร์ ซึ่งมีผลการตรวจสอบเงื่อนไขเป็นจริงหรือเป็นเท็จเท่านั้น
          boolean_expression_2 : เป็นนิพจน์ที่เป็นเงื่อนไขทางตรรกศาสตร์ ซึ่งมีผลการตรวจสอบเงื่อนไขเป็นจริงหรือเป็นเท็จเท่านั้น
          statements_1 : เป็นชุดคำสั่งที่จะทำงานเมื่อเงื่อนไข boolean_expression_1 ที่กำหนดให้เป็นจริง 
          statements_2เป็นชุดคำสั่งที่จะทำงานเมื่อเงื่อนไข boolean_expression_2 ที่กำหนดให้เป็นจริง
  statements_n : เป็นชุดคำสั่งที่จะทำงานเมื่อเงื่อนไขที่กำหนดให้ทั้งหมดเป็นจริง

         ตัวอย่าง โปรแกรม nested if  หรือ if  else  if  โจทย์ ให้คำนวณยอดขายรวม 4 ไตรมาส โดยมีเงื่อนไขดังนี้
ยอดขายรวม น้อยกว่า 100,000 ค่าคอม = 0   รางวัลพิเศษไม่มี
ยอดขายรวม น้อยกว่า 300,000 ค่าคอม = 0.05%   รางวัลพิเศษไม่มี
ยอดขายรวม น้อยกว่า 500,000 ค่าคอม = 0.10%   รางวัลพิเศษ ทอง 1 บาท
ยอดขายรวม น้อยกว่า 1,000,000 ค่าคอม = 0.15%   รางวัลพิเศษ ทอง 2 บาท
ยอดขายรวม มากกว่า 1,000,000 ค่าคอม = 0.20%   รางวัลพิเศษ Nissan March



           
import java.util.Scanner;

public class lab6 {

    public static void main(String[] ars) {
        double total_sale = 0, comm, sale1, sale2, sale3, sale4;
        String prize = "";
        Scanner input = new Scanner(System.in);
        System.out.print("Enter Sale 1 = ");
        sale1 = input.nextDouble();
        System.out.print("Enter Sale 2 = ");
        sale2 = input.nextDouble();
        System.out.print("Enter Sale 3 = ");
        sale3 = input.nextDouble();
        System.out.print("Enter Sale 4 = ");
        sale4 = input.nextDouble();
        System.out.println("**********************");
        total_sale = sale1 + sale2 + sale3 + sale4;
        System.out.println("Total sale = " + total_sale);

        if (total_sale < 100000) {
            comm = 0;
            prize = "ไม่มี";
        } else if (total_sale < 300000) {
            comm = total_sale * 0.05;
            prize = "ไม่มี";
        } else if (total_sale < 500000) {
            comm = total_sale * 0.10;
            prize = "ทอง 1 บาท";
        } else if (total_sale < 1000000) {
            comm = total_sale * 0.15;
            prize = "ทอง 2 บาท";
        } else {
            comm = total_sale * 0.20;
            prize = "Nissan March";
        }
        System.out.println("Committion = " + comm);
        System.out.println("Prize = " + prize);
    }//end main 
}//end class




OUTPUT


                Enter Sale 1 = 100000       
        Enter Sale 2 = 200000
        Enter Sale 3 = 400000
        Enter Sale 4 = 2000
        **********************
        Total sale = 702000.0
        Committion = 105300.0
        Prize = ทอง 2 บาท 


0 ความคิดเห็น:

แสดงความคิดเห็น