Untitled Document
สวัสดีครับ
ในบทความนี้ผมจะพูดถึงคำสั่งที่ใช้วนลูปคำสั่งสุดท้ายกันนะครับ
มือเก่าที่เข้ามาอ่านน่าจะพอเดาได้นะครับว่าคำสั่งอะไร คำสั่งที่ว่านั้นก็คือคำสั่ง
for ครับ ซึ่งคำสั่งนี้ถ้าเราเข้าใจได้ดีจะทำให้ใช้งานมันได้สะดวกสบายขึ้น คำสั่งนี้มีเงื่อนไขในการใช้งานอยู่พอสมควรเราลองมาดูกันเลยนะครับ
คำสั่ง for มีรูปแบบดังนี้

จากรูปแบบของการใช้งานคำสั่งนี้จะเห็นว่าในวงเล็บของคำสั่ง
for นั้นมี 3 ส่วนที่ต้องกำหนด คือ 1. ค่าตัวแปรเริ่มต้น ใช้กำหนดค่าเริ่มต้นของตัวแปรที่จะใช้ในการควบคุม
การวนลูป 2. เงื่อนไข ใช้กำหนดเงื่อนไขการวนลูป 3. เปลี่ยนแปลงค่าตัวแปร ใช้ในการเพิ่มหรือลดค่าของตัวแปรที่ใช้ในการควบคุมการวนลูป
จะเห็นว่าการใช้งานนั้นต่างจาก คำสั่ง while โดยที่คำสั่ง for นั้นจะมีการกำหนดค่าและเงื่อนไขต่างๆ
ลงไปเลยทันทีเพื่อใช้ในการควบคุมการวนลูปตามที่เราต้องการ ลองมาดูตัวอย่างกันดีกว่านะครับ

อธิบายโปรแกรม
จากโค้ดโปรแกรมนี้จะเป็นการคำนวณหาค่าผลบวกของ 1 ถึง 10 (1+2+3+4+5+6+7+8+9+10)
ซึ่งใช้ลูป for นะครับโดยมีการกำหนดตัวแปร i ไว ้เป็น 1 เมื่อเริ่มเข้ามาที่ลูป
ส่วนเงื่อนไขคือ i <= 10 คือ เราต้องการให้ลูปนี้วนไป 10 ครั้ง ส่วน i++ เป็นการเพิ่มค่า
i ทีละ 1 เมื่อจบรอบการทำงานในแต่ละรอบนั่นเอง ลองไล่ โค้ดดูนะครับ
i = 1, sum = 0 +
1 จบรอบแรก sum = 1
i = 2, sum = 1 + 2 จบรอบที่สอง sum = 3
i = 3, sum = 3 + 3 จบรอบที่สาม sum = 6
i = 4, sum = 6 + 4 จบรอบที่สี่ sum = 10
i = 5, sum = 10 + 5 จบรอบที่ห้า sum = 15
i = 6, sum = 15 + 6 จบรอบที่หก sum = 21
i = 7, sum = 21 + 7 จบรอบที่เจ็ด sum = 28
i = 8, sum = 28 + 8 จบรอบที่แปด sum = 36
i = 9, sum = 36 + 9 จบรอบที่เก้า sum = 45
i = 10, sum = 45 + 10 จบรอบที่สิบ sum =
55
จะเห็นว่าในรอบสุดท้ายคือ รอบที่สิบนั้นค่า
i++ ยังคงทำงานอยู่คือ จะได้ค่า i ค่าสุดท้ายเป็น 11 แต่พอนำไปเช็คที่เงื่อนไขแล้วทำให้เงื่อนไขนั้นผิดเพราะ
i <= 10 นั่นเองจึง ทำให้ออกจากลูป นอกจากนี้ยังมีการใช้งานในรูปแบบอื่นอีกซึ่งผมจะยกมาเป็นกฏให้ดูกันนะครับ
กฎการใช้คำสั่ง for
1. ค่าที่เพิ่มขึ้นในแต่ละรอบของตัวแปรควบคุมนั้นจะเป็นเท่าไรก็ได้ เช่น
for(int x=0 ; x<=100 ; x=x+5)
2. ค่าของตัวแปรควบคุมอาจถูกกำหนดให้ลดลงก็ได้
เช่น
for(int x=100 ; x>0 ; x- -)
3. ตัวแปรควบคุมอาจเป็นชนิด character
ได้ เช่น
for(char ch =’a’ ; ch<=’z’ ;
ch++)
4. ตัวแปรควบคุมสามารถมีได้มากกว่า 1 ตัวแปร
เช่น
for(int x=0,y=0 ; x+y<100 ; x++,y++)
5 . ถ้ามีการละบางส่วนหรือทุกส่วนของพารามิเตอร์ในวงเล็บจะเป็นการสั่งให้ for ทำงานไม่รู้จบ
เช่น
for( ; ; )
System.out.println(“ Hello”);
6. ในคำสั่ง for สามารถมีคำสั่ง for ซ้อนอยู่ภายในได้อีก
เช่น
for(int x=1 ; x<=3 ; x++)
{
System.out.println(“ x = ”+x);
for(int y=1 ; x<=5 ; y++)
System.out.println(“ y = ”+y);
}
เป็นอย่างไรกันบ้างครับกฏการใช้งานทั้ง 6
ข้อซึ่งจะทำให้เรานำไปใช้งานในรูปแบบอื่นได้อีก ผมแนะนำว่าท่านที่ยังไม่คุ้นเคยก็ให้ฝึกฝนเขียนกันเลยนะครับจะได้รู้ผิดรู้ถูกและ
เป็นการเพิ่มทักษะให้กับตัวเองด้วยนะครับ สำหรับคำสั่งในการวนลูปก็คงจะมีเพียงเท่านี้แหละครับที่ใช้งานกันบ่อยๆ
ก่อนที่จะจบบทความผมมีแบบทดสอบให้มาทำกันเล่นๆ นะครับให้ลองดูภาพต่อไปนี้ครับ

ในสามรูปนี้ให้เราลองเขียนโปรแกรมโดยใช้เครื่องหมาย
* พิมพ์ออกมาเป็นรูปตามแบบ โดยมีข้อกำหนดว่าให้ใช้เครื่องหมาย
* ได้แค่ดวงเดียวในโปรแกรม นะครับ ห้ามลักไก่ใช้ System.out.println(“
* * * * * ”); ออกมาแบบนี้นะครับ ใช้ได้แค่ดวงเดียวเท่านั้น แล้วให้มันพิมพ์ออกมาเป็นรูปดังกล่าวรูปใดรูปหนึ่งโปรแกรมละ
1 รูป ลองทำกันเล่นๆ ดูนะครับถือว่าเป็นการฝึกฝนการเขียนโปแกรมไปในตัว ถ้าใครอยากได้เฉลยก็ไปโพสต์บอกผมไว้ที่
webboard นะครับ ส่วนในบทความนี้ผมขอจบ เพียงแค่นี้นะครับเจอกันบทความหน้าครับ...
|