9. การเขียนนิพจน์เชิงตรรกะ
2.2 ตัวดาเนินการความสัมพันธ์
กาหนด a = 3 ; b = 2 ;
ตัวดาเนินการ ศัพท์เฉพาะ ความหมาย
< less than น้อยกว่า
> greater than มากกว่า
<= less than or equal น้อยกว่าหรือเท่ากับ
>= greater than or equal มากกว่าหรือเท่ากับ
== equal เท่ากับ
!= not equal ไม่เท่ากับ
12. คาสั่งควบคุมแบบมีทางเลือก ลักษณะ if
คาสั่งควบคุมแบบ if มี 3 ลักษณะคือ แบบ if แบบ if – else
และแบบ if – else if – else
3.1 กรณีใช้ประโยคคาสั่งแบบ if
คาสั่ง if มีการทางานดังนี้ หากประโยคเงื่อนไขเป็นจริงให้ไป
ทางานตามคาสั่งต่อจากเงื่อนไข แล้วไปตาแหน่งคาสั่งชุดต่อไป
หากเงื่อนไขเป็นเท็จก็ไม่ต้องทาอะไร ให้ไปตาแหน่งคาสั่งชุด
ต่อไป
13. คาสั่งควบคุมแบบมีทางเลือก ลักษณะ if
3.1.1 รูปแบบการเขียนคาสั่งแบบ if
รูปแบบ 1
กรณีหลังเงื่อนไข if มี 1 คาสั่ง
if (เงื่อนไข)
คาส่ง ; (กรณีเงื่อนไขเป็นจริง)
คาสั่งชุดต่อไป ; (กรณีเงื่อนไขเป็นเท็จ)
14. คาสั่งควบคุมแบบมีทางเลือก ลักษณะ if
รูปแบบ 2
กรณีหลังเงื่อนไข if มีมากกว่า 1 คาสั่ง
if (เงื่อนไข)
{
กลุ่มคาสั่ง ; (กรณีเงื่อนไขเป็นจริง)
} ;
คาสั่งชุดต่อไป ; (กรณีเงื่อนไขเป็นเท็จ)
15. คาสั่งควบคุมแบบมีทางเลือก ลักษณะ if
3.2 กรณีใช้ประโยคคาสั่งแบบ if – else
คาสั่ง if – else มีการทางานดังนี้ หากเงื่อนไขเป็นจริง ให้ทางานตามคาสั่งชุดที่ 1
แล้วไปที่คาสั่งชุดต่อไป แต่หากเงื่อนไขเป็นเท็จ ให้ทางานตามคาสั่งชุดที่ 2 แล้วไปที่คา
สั่งชุดต่อไป
3.2.1 รูปแบบการเขียนคาสั่งแบบ if – else
รูปแบบ การใช้คาสั่งแบบ if – else
If (เงื่อนไข)
คาสั่งชุดที่ 1 (กรณีเงื่อนไขเป็นจริง) ;
else
คาสั่งชุดที่ 2 (กรณีเงื่อนไขเป็นเท็จ) ;
คาสั่งชุดต่อไป ;
ข้อควรจา หากแต่ละทางเลือกมีมากกว่า 1 คาสั่ง ต้องใช้เครื่องหมาย { } กั้นขอบเขต
16. คาสั่งควบคุมแบบมีทางเลือก ลักษณะ if
O 3.3 กรณีใช้ประโยคคาสั่งแบบ if – else if – else
O คาสั่ง if – else if – else มีการทางานดังนี้ หากเงื่อนไข 1 เป็นจริง
ให้ทางานตามคาสั่งชุดที่ 1 แล้วทาตามคาสั่งชุดต่อไป หากเงื่อนไข 1
เป็นเท็จ ให้ตรวจสอบว่าเงื่อนไข 2 เป็นจริงหรือไม่ หากเงื่อนไข 2 เป็น
จริงให้ทางานตามคาสั่งชุดที่ 2 แล้วทาตามคาสั่งชุดต่อไป หากเงื่อนไข
2 เป็นเท็จ ให้ตรวจสอบว่าเงื่อนไข n เป็นจริงหรือไม่ หากเงื่อนไข n
เป็นจริง ให้ทางานตามคาสั่งชุดที่ n แล้วทาตามคาสั่งชุดต่อไป หาก
เงื่อนไข n เป็นเท็จ ให้ทาตามคาสั่งที่อยู่หลัง else แล้วทาตามคาสั่งชชุด
ถัดไป
17. คาสั่งควบคุมแบบมีทางเลือก ลักษณะ if
3.3.1 รูปแบบการเขียนคาสั่งแบบ if – else if – else
รูปแบบ รูปแบบการเขียนคาสั่งแบบ if – else if – else
if (เงื่อนไข 1)
คาสั่งชุดที่ 1 ; (กรณีเงื่อนไข 1 เป็นจริง)
else if (เงื่อนไข 2)
คาสั่งชุดที่ 2 ; (กรณีเงื่อนไข 2 เป็นจริง)
…..
else
คาสั่งชุดที่ n ; (นอกเหนือจากเงื่อนไขข้างต้น)
คาสั่งชุดต่อไป ;
ข้อควรจา หากแต่ละทางเลือกมีมากกว่า 1 คาสั่ง ต้องใช้เครื่องหมาย { } กั้นขอบเขต
18. 4. คาสั่งควบคุมแบบมีทางเลือก ลักษณะ switch
การควบคุมการทางานเชิงตรรกะในภาษาซี นอกจากคาสั่ง if
แล้ว ยังมีคาสั่ง switch ที่ให้เลือกนาไปใช้ควบคุมการทางานแบบมีทางเลือก
กรณีทางเลือกการทางานมีเป็นจานวนมาก ตัวอย่างเช่น งานตัดสินผลการ
เรียนแบบ 8 ระดับ หากใช้คาสั่ง if รูปแบบการเขียนประโยคคาสั่งจะมีจาน
วนบรรทัดคาสั่งจานวนมาก ทาให้อ่านคาสั่งได้ยากภาษาซีออกแบบคาสั่ง
switch ให้ทางานลักษณะวิเคราะห์ตรวจสอบค่าของตัวแปร หรือนิพจน์ว่า
ตรงกับคาภายในคาสั่ง case ใด จะทางานตามคาสั่งภายใต้การควบคุมของ
คาสั่ง case นั้น แต่หากตรวจสอบแล้วไม่ตรงกับคาสั่งใดเลย จะทางาน
ภายใต้คาสั่ง default (ผุ้เขียนคาสั่งอาจไม่เลือกเขียนคาสั่ง default ก็ได้)
19. 4. คาสั่งควบคุมแบบมีทางเลือก ลักษณะ switch
4.1 รูปแบบการเขียนคาสั่งและแนวทางผังงานแบบ switch
Switch { var / expression}
{
case ค่าที่ 1 : คาสั่งชุดที่ 1 ;
break ;
case ค่าที่ 2 : คาสั่งชุดที่ 2 ;
break ;
case ค่าที่ n : คาสั่งชุดที่ n ;
break ;
: คาสั่ง ;
}
คาสั่งชุดต่อไป
20. O กรณีใช้คาสั่ง switch
O โจทย์ : จงเขียนงานโปรแกรม
ในลักษณะเมนูเลือกการทางาน
ด้วยคาสั่ง switch ดังนี้
O กาหนดให้ กด 1 คานวณพื้นที่
สี่เหลี่ยมจัตุรัส
O กด 2 คานวณพื้นที่สามเหลี่ยม
O กด 3 ออกจากระบบงาน
นอกเหนือจากนี้ แจ้งข้อความ
การกดหมายเลขผิดพลาด
ขั้นตอนการพัฒนางานโปรแกรม
1. การวิเคราะห์ระบบงานเบื้องต้น
1.1 สิ่งที่ต้องการ โปรแกรมเมนูเลือกการ
คานวณพื้นที่สี่เหลี่ยม และพื้นที่สามเหลี่ยม
1.2 สมการคานวณ พื้นที่สี่เหลี่ยม = กว้าง x
ยาว พื้นที่สามเหลี่ยม = ฐาน x สูง /2
1.3 ข้อมูลนาเข้า ตัวเลือกเมนู ความกว้าง
ความยาว หรือฐานกับสูง
1.4 การแสดงผลตามโจทย์กาหนด
1.5 กาหนดคุณสมบัติตัวแปร
21. กรณีศึกษาการใช้คาสั่งควบคุมแบบมีทางเลือก
O 1.6 ลาดับขั้นตอนการทางาน
(action)
O 1) เริ่มต้นการทางาน
O 2) แสดงส่วนเมนูเลือกงาน
O 3) ป้อนค่าตัวเลือกเมนู (ans)
O 4) เลือกทางานด้วยคาสั่ง switch
(ans)
O 4.1) ถ้า ans เป็น ‘1’ ให้ทา งาน
กลุ่มคาสั่ง ดังนี้
O - ป้อนคาสั่ง w, l
O - คานวณ area = w * l
O - พิมพ์ area
O (ออกไปทางานข้อ 5)
ข้อมูล ชื่อหน่วยความจา ชนิดข้อมูล
ความกว้าง w ตัวเลขทศนิยม
ความยาว l ตัวเลขทศนิยม
ฐาน b ตัวเลขทศนิยม
สูง h ตัวเลขทศนิยม
พื้นที่ area ตัวเลขทศนิยม
ตัวเลือกเมนู ans อักษะ
22. O 4.2) ถ้า ans เป็น ‘2’ ให้ทางานกลุ่มคาสั่ง ดังนี้
O - ป้อนคาสั่ง b, h
O - คานวณ area = b * h/2
O - พิมพ์ area
O (ออกไปทางานข้อ 5)
O 4.3) ถ้า ans เป็น ‘3’ ให้ทางานกลุ่ม คาสั่ง ดังนี้
O - ออกจากส่วนการทางาน
O (ออกไปทางานข้อ 5)
O 4.4) นอกเหนือจากนี้ พิมพ์ข้อความแจ้ง ข้อผิดพลาด
O (ออกไปทางานข้อ 5)
O 5) สิ้นสุดการทางาน