คำสง่ั ตรวจสอบเงอื่ นไข ในการเขยี นโปรแกรม คำส่งั if เปน็ คำสง่ั ทเ่ี ลือกกระทำอยา่ งใดอยา่ งหนง่ึ โดยจากคำสัง่ if นัน้ จะใช้ในการเขยี นโปรแกรม ทดสอบว่าจะเลือกทำหรือไม่ โดยถา้ เงื่อนไขเป็นจรงิ จะทำคำส่ังหรือ Statement หลัง if เช่น ถ้าเรา ป้อนค่าทถี่ กู ต้องแลว้ ทางเลือกมี OK กบั Error คอมพิวเตอรจ์ ะพิมพ์ท้งั OK และ Error ซ่งึ การทำงาน ในลักษณะน้ี ควรจะใหโ้ ปรแกรมทำงานแบบเลือกทำอยา่ งใดอย่างหน่งึ เพราะคอมพิวเตอรค์ วรเลือก ทำอย่างใดอย่างหนึง่ รปู แบบการเขยี น flowchart ของคำสงั่ if นั้นเป็นดงั นี้ โดย Connector คือ จุดเชอ่ื มต่อกบั ผงั งานอน่ื ๆ หรือผังงานก่อนหน้า Decision คอื การตรวจสอบเง่อื นไขเพือ่ เลือกทำอยา่ งใดอยา่ งหน่งึ โดยมีลกู ศร แสดงทิศทาง Process คอื การประมวลผลการคำนวณต่าง ๆ รูปแบบคำสัง่ ของ if มรี ูปแบบการเขยี นดงั นี้
การเขยี นคำส่ัง if เป็นการเขียนโปรแกรมใหต้ รวจสอบค่าท่ีรับมา ถ้าตรงเงื่อนไขให้แสดง ข้อมลู ในเง่ือนไข if ถา้ ไม่ตรงเงอ่ื นไข ก็ไมแ่ สดงผลอะไร ดังตวั อย่าง ตวั อย่าง เขียนโปรแกรมโดยใหม้ ีเลขในเงื่อนไขเทา่ กบั 20 ถ้าเลขที่เรารับเขา้ มามคี ่ามากว่า 20 จะเขา้ เงอื่ นไข if และแสดงวา่ “Money enough) ถ้าเลขน้อยกว่า 20 กไ็ มแ่ สดงผลอะไรออกมา เริ่มตน้ รบั ค่าตวั เลข เทจ็ จริง >20 Money enough จบการทำงาน
นำ flowchart มาเขยี นโปรแกรมได้ดงั นี้ ผลลพั ธ์ทไี่ ด้ ถ้าหากตัวเลขมากกวา่ 20
และผลลัพธถ์ ้าหากเลขน้อยกว่า 20 คำสง่ั if – else โดยตรวจสอบเงื่อนไขท่ีกำหนดจะใช้คำสัง่ if -else ซึ่งถา้ เงอ่ื นไขเป็นจริงจะทำคำสัง่ หลงั if แตถ่ า้ เงื่อนไขเปน็ เท็จกจ็ ะทำคำส่ังหลงั else รปู แบบการเขยี น flowchart ของคำสัง่ if – else นัน้ เป็นดังนี้
จากหลกั การเขยี น flowchart ของคำสงั่ if – else น้ันไดม้ าจากรูปแบบการเขยี นคำสั่ง if – else ดงั นี้ โดย condition คอื เง่ือนไขในการตรวจสอบข้อมลู Statement คอื ชดุ คำสงั่ ท่ีทำงานเม่ือเงอื่ นไขเปน็ จริง ตวั อยา่ ง เขยี นโปรแกรม หากคะแนนมากกว่าหรือเทา่ กับ 50 ใหแ้ สดงผลลพั ธ์ “Pass” หากไม่ใช่ ให้ แสดงผลลัพธ์ “Fail” จากโจทยส์ ามารถเขยี น Flowchart ไดด้ งั น้ี เร่มิ ตน้ รบั คา่ score เท็จ Fail จริง >=50 Pass จบการทำงาน
และจาก flowchart ดังกลา่ ว สามารถนำมาเขยี นโปรแกรมได้ดงั น้ี ผลลัพธท์ ่ีได้ ค่ามากกวา่ หรือเทา่ กบั 50 จะได้
ค่าท่ไี ม่ใช่ มากกว่าหรอื เทา่ กบั 50 จะได้ ตัวอย่าง เขียนโปรแกรม คอมพวิ เตอรร์ บั ตวั เลขจำนวนเตม็ เข้าไป 2 ตวั จากนน้ั นำมาหารกัน แต่ก่อน จะหารจะตรวจสอบก่อนวา่ ค่าทีน่ ำมาหารเป็น 0 หรือไม่ ถ้าเป็นจะแจง้ วา่ หารไมไ่ ด้ เร่ิมตน้ รับคา่ ตวั เลขครง้ั ที่ 1 (num1) รับคา่ ตวั เลขคร้ังท่ี 2 Answer is : (num2) (คา่ num1 / num2) เทจ็ >=50 จรงิ Cannot divide by zero จบการทำงาน
และจาก flowchart ดงั กล่าว สามารถนำมาเขยี นโปรแกรมไดด้ ังน้ี ผลลพั ธ์ทีไ่ ด้ คา่ ท่ใี สต่ วั เลขคร้ังที่ 2 เทา่ กับ 0
ค่าทีไ่ มใ่ ช่ คา่ ท่ีใสต่ วั เลขครั้งท่ี 2 เท่ากบั 0 รปู ที่ 9.14 ผลลัพธ์เมื่อส่วนไม่ใช่ 0 ในการเขยี นโปรแกรมคอมพวิ เตอร์ มักจะต้องมีการส่ังให้โปรแกรมเลือกทำอยา่ งใดอย่างหน่ึง การทำงานประเภทน้ีจะนำคำสงั่ เลอื กทำมาใช้ คำส่งั เลือกทำอยา่ งใดอย่างหนง่ึ (if – else) เม่อื โปรแกรมจะทำคำสงั่ จะต้องมีการตรวจสอบเง่ือนไขก่อนการตรวจสอบเงือ่ นไขก่อน การตรวจสอบ เงือ่ นไขน้นั ผลลัพธท์ ไี่ ด้จะเป็นจริงหรือเทจ็ เทา่ น้ัน คำสง่ั if – else if คำสัง่ if else น้ันสามารถใชใ้ นการควบคุมไดห้ ลายทางโดยใช้คำส่ัง if – else if ในกรณีที่ ตอ้ งการเขยี นโปรแกรมทีม่ ลี ักษณะหลายทางเลือกข้ึนอย่กู ับแตล่ ะเงื่อนไข เราสามารถสร้างประโยค หลายทางเลือกได้จากประโยค if – else ซอ้ นกันตามจำนวนของทางเลือก เพื่อใหส้ ามารถทำความ เข้าใจได้ง่ายขึน้ รปู แบบการเขียน flowchart ของคำสั่ง if – else if มีดงั น้ี
ตวั อยา่ ง เขียนโปรแกรม ให้ตรวจสอบตัวเลขเพื่อนำไปแลกสิทธิ์ซื้อกาแฟที่ 7-11 โดนถ้ามีแต้มมากกว่าหรือ เทา่ กับ 79 จะสามารถแลกเครือ่ งดืม่ แบบปั่น (Frappe) ได้ แต่ถา้ แตม้ ไม่ถงึ 79 แตม่ ากกว่าหรือเทา่ กับ 30 แตม้ จะแลกเคร่อื งดมื่ ธรรมดาได้ โดยหากแตม้ นอ้ ยกวา่ น้นั จะไม่สามารถเลอื กได้ จากโจทย์สามารถเขียน Flowchart ได้ดงั นี้ เรมิ่ ต้น รับคา่ ตวั เลข จริง Frappe drink >= 79 Hot / Cold drink เทจ็ จริง >= 30 เท็จ Point not enough จบการทำงาน
และจาก flowchart ดงั กลา่ ว สามารถนำมาเขียนโปรแกรมไดด้ งั น้ี ผลลพั ธท์ ่ไี ด้ ถา้ หากมี point มากกว่า 79 แต้มจะสามารถรับเคร่อื งดมื่ ปั่นได้
ถา้ หากมี point มากกวา่ 30 แต้มแต่ไมถ่ ึง 79 แตม้ จะสามารถรบั เครื่องดมื่ รอ้ น/เย็นได้ และถ้าหาก point ไมถ่ ึง 30 แต้ม กจ็ ะไม่สามารถแลกเครือ่ งดม่ื ได้
Search
Read the Text Version
- 1 - 13
Pages: