คำสั่ง if
เป็นคำสั่งที่ใช้ในการตรวจสอบเงื่อนไขว่าเป็นจริงหรือเท็จ โดยถ้าเป็นจริงจะไปทำงานในกลุ่มคำสั่งที่เรากำหนดไว้ และถ้าเป็นเท็จก็จะไปทำงานอีกจุดหนึ่งซึ่งเป็นทางเลือก อีกทางหนึ่งในโปรแกรม จะแบ่งรูปแบบของคำสั่งออกเป็น 2 แบบ คือ แบบเงื่อนไขเดียว (simple if) ,แบบ 2 เงื่อนไข (if…else)
1 .แบบเงื่อนไขเดียว (simple if) มีรูปแบบดังนี้


ดูจากแผนภาพจะเห็นว่าเมื่อเงื่อนไขเป็นจริงจะวิ่งมาตามลูกศรเข้ามาทำตามกลุ่มคำสั่งที่เรากำหนด แต่ถ้าเงื่อนไขเป็นเท็จก็จะ วิ่งข้ามมาที่คำสั่งถัดไปซึ่งก็คือส่วนต่อไปของโปรแกรมที่ไม่ได้เกี่ยวข้องกับคำสั่ง if นั่นเอง รูปแบบนี้เป็น simple if ลองดูตัวอย่างที่เป็นโปรแกรม

อธิบายโปรแกรม จากโปรแกรมจะีประกาศตัวแปรไว้ 3 ตัวคือ x = 8 , y = 2 และตัวแปร z คำสั่ง if มีเงื่อไข ว่า x มากกว่าหรือเท่ากับ y ถ้าเงื่อนไขเป็นจริงจะเข้ามาทำคำสั่งภายในเครื่องหมายปีกกาทันที คือให้หาค่าของ x-y และแสดงผลออกมา แต่ถ้าเงื่อนไขเป็นเท็จจะข้ามาทำส่วน ต่อไปของโปรแกรมคือ หาค่าของ x+y และแสดงผลออกมา เมื่อรันโปรแกรมนี้แล้วจะได้ผลลัพธ์คือ z = 6 และ z = 10 ให้ลองเปลี่ยนค่า x ให้น้อยกว่าค่า y แล้วลองรันโปรแกรมดูใหม่ว่าผลออกมาจะเป็นอย่างไร ? สำหรับคำสั่งประเภท simple if นั้นใช้งานได้ง่ายเพียงสร้างเงื่อนไขขึ้นมาเพื่อให้มันทำงานเวลาที่เงื่อนไขเป็นจริง แต่ถ้าเรามีทางเลือกมากกว่าหนึ่งทางเราควรจะเปลี่ยนไปใช้คำสั่งที่เหมาะสมขึ้นซึ่งจะพูดถึงคำสั่ง if..else ในบทความต่อไป
2 .แบบ 2 เงื่อนไข (if...else) มีรูปแบบดังนี้

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

อธิบายโปรแกรม จากโปรแกรมได้ประกาศตัวแปรไว้ 3 ตัวคือ x = 8 , y = 2 และตัวแปร z จากนั้นมาเจอคำสั่ง if โดยมีเงื่อไข ว่า x มากกว่าหรือเท่ากับ y ถ้าเงื่อนไขเป็นจริงจะเข้ามาทำคำสั่งภายในส่วนของ if ทันที คือให้หาค่าของ x-y และแสดงผลออกมา แต่ถ้าเงื่อนไขเป็นเท็จจะข้ามาทำส่วนของ else ของโปรแกรมคือ หาค่าของ x+y และแสดงผลออกมา เมื่อรันโปรแกรมนี้แล้วจะได้ผลลัพธ์คือ z = 10 ให้ลองเปลี่ยนค่า x ให้น้อยกว่าค่า y แล้วลองรันโปรแกรมดูใหม่ว่า ผลออกมาจะเป็นอย่างไร? สำหรับคำสั่งประเภท if..else ก็มีรูปแบบการใช้งานดังที่กล่าวมาแล้ว
ที่มา : http://www.comnetsite.com/c-programming-tip6.php
ไม่มีความคิดเห็น:
แสดงความคิดเห็น