วันอาทิตย์ที่ 2 กันยายน พ.ศ. 2550

WeeK6

จากการเรียนของครั้งที่แล้วที่น่าปวดหัวนั้น คือการใช้ if กับ else เปล่าๆนั้น สามารถกำหนดเงื่อนไข
ได้แค่ใช่กับไม่เท่านั้น หรือพูดง่ายๆคือโปรแกรมจะทำเงื่อนไขได้แค่ 2 แบบเท่านั้นเอง-*-
แต่ถ้าเราต้องการเงื่อนไขที่ละเอียดมากขึ้น(เจ๋งขึ้น) เราสามารถใช้ else if แทน else
ธรรมดาซึ่งสามารถใช้ else if กี่ครั้งก็ได้ซึ่งตรงกันข้ามกับ else ธรรมดา
เช่น

if(x==100){ System.out.println("x = " + x);

System.out.println("Condition = true");

}

else if(x<100){system.out.println("your>100){System.out.println("Your number is higher than tnumber!!!");

System.out.println("Please try again.");

}

ซึ่งเป็นตัวอย่างหนึ่งของการบอกเงื่อนไขที่ละเอียดโดยถ้าตัวเลขนั้นมากกว่า
โปรแกรมจะทำงานว่า
Your number is higher than that number!!!Please try again.
แต่ถ้าน้อยกว่าจำทำงาน
Your number is lower than that number!!!Please try again.
แทนโดยสรุปแล้ว การใช้ else if มีการเขียนชุดคำสั่งดังนี้

if(a){ชุดคำสั่ง1;
}

else if(b){ชุดคำสั่ง2;
}

else if(c){ชุดคำสั่ง3;
}

...

ไม่ยากอย่างที่คิดใช่ปะ

ในอีกทางหนึ่ง หากโปรแกรมที่เป็นตัวเลขมากๆแล้วการใช้ if, else หรือ else if
จะทำให้ข้อมูลการเขียนนั้นยาวมากจนอาจทำให้โปรแกรมทำงานมากจนเกินความจำ
เป็นก็ได้เช่นการคิดคะแนนเกรด หรือการวัดรายได้ของประชากรเป็นต้นซึ่งตัวเลขนั้นมี
มากมายเราจึงต้องใช้ switch - case ซึ่งโปรแกรมที่ทำงานคล้ายกับ if else
แต่สามารถทำงานได้หลากหลายกว่าและง่ายกว่า โดยสามารถใช้กับข้อมูลที่เป็นจำนวนเต็มก็ได้
หรือเป็นอักขระก็ได้โดยจะแบ่งเป็นกรณีๆ
เช่น

switch(x/10)
{
case 0:;
case 1:;
case 2:;
case 3:;
case 4:System.out.println("You're failed!!โงจัง");break;
case 5:System.out.println("You're grade is 1.");break
;case 6:System.out.println("You're grade is 2.");break
;case 7:System.out.println("You're grade is 3.");break
;case 8:
;case 9:
;case 10:System.out.println("You're grade is 4. Congratulations!!เก่งจังนะ");break;
}

ในกรณีนี้เป็นการใส่คะแนนเพื่อหาเกรด โดย
ถ้าคะแนนอยู่ในระดับ 80-100 จะได้เกรด 4
ถ้าคะแนนอยู่ในระดับ 70-79 จะได้เกรด 3
ถ้าคะแนนอยู่ในระดับ69-60 จะได้เกรด 2
ถ้าคะแนนอยู่ในระดับ 59-50 จะได้เกรด 1
และน้อยกว่านั้นคือตก*ข้อสังเกตุ 1 จากเงื่อนไข switch

จะเห็นได้ว่าถ้าเป็นตัวเลขจำนวนเต็มที่หารด้วย 10 แล้วจะเหลือเศษอยู่ในบางกรณี
ซึ่งโปรแกรมจะปัดเศษลงอัตโนมัติ เพื่อให้โปรแกรมทำงาน
2. ต้องมี break ตามท้ายด้วยเนื่องจากหากไม่มี โปรแกรมจะทำเงื่อนไขอื่นๆด้วย
เช่น
หาก ได้คะแนน 62 โปรแกรมจะ

บอกว่า คุณได้เกรด 4, 3 และ 2 ซึ่งมันตรงข้ามกับความเป็นจริง

วันนี้มีอะไรที่ต้องเรียนรู้มากมายนัก จงเรียนรู้เพื่ออนาคตที่สดใส 555+

ไม่มีความคิดเห็น: