top of page

กิจกรรมที่ 4.1  การตัดสินใจ

จุดประสงค์การเรียนรู้ :

1. บอกค่าความจริงของประพจน์และเชื่อมประพจน์ได้

2. เขียนเงื่อนไขจากปัญหาต่างๆ ได้

3. อธิบายโครงสร้างการเขียนโปรแกรมแบบมีเงื่อนไขได้

4. เขียนโปรแกรมแบบมีเงื่อนไข (If…else) ได้

5. เขียนโปรแกรมแบบมีเงื่อนไข (switch…case) ได้

 

1. ประพจน์และค่าความจริง

1.1. ความหมายของประพจน์  

  ประพจน์ คือ ข้อความหรือประโยคที่มีค่าความจริงเป็นจริง(T) หรือเท็จ(F) อย่างใดอย่างหนึ่งเท่านั้น

  ตัวอย่าง 

- จำนวนคู่ได้แก่ 2,4,6    มีค่าความจริงเป็นจริง

- 0 มีค่าน้อยกว่า 8        มีค่าความจริงเป็นจริง

- เลข 1 เป็นจำนวนคู่     มีค่าความจริงเป็นเท็จ

- 3 มีค่ามากกว่า 7        มีค่าความจริงเป็นเท็จ

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

1280px-YouTube_Logo.svg.png

: KRU BinaryIT

2. การกำหนดเงื่อนไข

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

          การกำหนดเงื่อนไขสำหรับเขียนโปรแกรม จะต้องอาศัยตัวดำเนินการทางคณิตศาสตร์ (ซึ่งกล่าวไว้แล้วในบทที่ 2) เข้ามาช่วยในการกำหนดเงื่อนไขเพื่อนำไปสร้างเป็นเงื่อนไขในคำสั่งควบคุมทิศทางการทำงานของโปรแกรม เช่น If…else, for, switch…case เป็นต้น

 

1280px-YouTube_Logo.svg.png

: KRU BinaryIT

3. คำสั่ง if…else  

         การเขียนโปรแกรมเพื่อให้มีการตัดสินใจสามารถใช้คำสั่ง if…else มาช่วยแก้ปัญหาได้ โดยมีรูปแบบของคำสั่ง 3 รูปแบบ คือ

          1. if  : ใช้กรณีเงื่อนไขเดียว

          2. if…else  : ใช้กรณีสองเงื่อนไข

          3. if…else if   : ใช้กรณีมากกว่าสองเงื่อนไข

 

3.1 การใช้งานคำสั่ง  if  :  ใช้กรณีเงื่อนไขเดียว

3.2 การใช้งานคำสั่ง  if…else  :  ใช้กรณีสองเงื่อนไข

3.3 การใช้งานคำสั่ง  if…else if  :  ใช้กรณีมากกว่าสองเงื่อนไข

อธิบาย

                     จากคำสั่งเป็นการตรวจสอบมากกว่า 2 เงื่อนไข คือ

- ตรวจสอบตัวแปร number1 มีค่าเท่ากับ number2 หรือไม่ หาก number1 มีค่าเท่ากับ number2 จริง ให้แสดง

ข้อความที่ textBox3 ว่า number1 เท่ากับ number2 ถ้าเงื่อนไขที่ 1 เป็นเท็จจะตรวจสอบเงื่อนไขถัดไป

- ตรวจสอบเงื่อนไขที่ 2 หากตัวแปร number1 มีค่ามากกว่า number2 จริง ให้แสดงข้อความที่ textBox3 ว่า

number1 มากกว่า number2 ถ้าเงื่อนไขที่ 2 เป็นเท็จอีก จะไปทำงานที่ else

- หากทุกเงื่อนไขเป็นเท็จ จะทำงานใน else โดยแสดงข้อความที่ textBox3 ว่า number1 น้อยกว่า number2

*** เมื่อตรวจสอบเจอเงื่อนไขที่เป็นจริงแล้วจะไม่ตรวจสอบเงื่อนไขถัดไปอีก

ตัวอย่างโปรแกรม

          ตัวอย่างการใช้คำสั่ง if…else if กับโปรแกรมตัดเกรด โดยผู้ใช้งานป้อนคะแนน และคลิกปุ่มตัดเกรด โปรแกรมจะแสดงเกรดที่ได้ในคอนโทรล textbox ซึ่งโปรแกรมมีการออกแบบหน้าจอ ดังนี้

1280px-YouTube_Logo.svg.png

: KRU BinaryIT

4. คำสั่ง switch…case

          เป็นการเขียนโปรแกรมเกี่ยวกับเงื่อนไขแต่ต่างกับคำสั่ง if else ตรงที่เป็นเงื่อนไขที่มีตัวเลือกให้เลือกมากกว่า 2 ตัวเลือก นั่นคือเป็นคำสั่งที่เหมาะกับเงื่อนไขที่มีตัวเลือกมาก หรืออาจจะพิจารณาดูจากโจทย์ปัญหาที่มีลักษณะการเขียนโปรแกรมเป็นแบบเมนูให้เลือก

      อธิบาย

               จากคำสั่งเป็นการตรวจสอบตัวแปร x ที่มีตัวเลือกจำนวน 4 ตัวเลือก ดังนี้

- ตรวจสอบตัวแปร x มีค่าเท่ากับ 1  หรือไม่ หาก x มีค่าเท่ากับ 1 จริง ให้เปิดภาพ one.gif  ใน  pictureBox1 แต่ถ้าเป็น

เท็จให้ตรวจสอบ case ถัดไป

- ตรวจสอบตัวแปร x มีค่าเท่ากับ 2  หรือไม่ หาก x มีค่าเท่ากับ 2 จริง ให้เปิดภาพ two.gif  ใน  pictureBox1 แต่ถ้าเป็น

เท็จให้ตรวจสอบ case ถัดไป

- ตรวจสอบตัวแปร x มีค่าเท่ากับ 3  หรือไม่ หาก x มีค่าเท่ากับ 3 จริง ให้เปิดภาพ three.gif  ใน  pictureBox1 แต่ถ้าเป็น

เท็จให้ตรวจสอบ case ถัดไป

- ตรวจสอบตัวแปร x มีค่าเท่ากับ 4  หรือไม่ หาก x มีค่าเท่ากับ 4 จริง ให้เปิดภาพ four.gif  ใน  pictureBox1 แต่ถ้าเป็น

เท็จให้ตรวจสอบ case ถัดไป

- เมื่อตรวจสอบตัวแปร x แล้วไม่ตรงกับ case ใดเลย ให้แสดงข้อความ “ป้อนตัวเลขไม่ถูกต้อง” ใน textBox1

    ตัวอย่างโปรแกรม

          ตัวอย่างการใช้คำสั่ง switch…case กับโปรแกรมอย่างง่ายสีบอกนิสัย โดยใช้คอนโทรล ListBox แสดงสีต่างๆ แล้วผู้ใช้งานคลิกเลือกสีที่ชอบ และคลิกปุ่มดูผลทำนาย มีการออกแบบหน้าจอ ดังนี้

1280px-YouTube_Logo.svg.png

: KRU BinaryIT

ดาวโหลดเอกสารประกอบการเรียน

ดาวน์โหลดใบงาน

bottom of page