. . . . . . . .การจะสั่งให้โปรแกรมทำอะไร ไปทางไหน อย่างไร เราก็ต้องมีการกำหนดเเงื่อนไขการทำงานให้กับโปรแกรม ว่าจะให้ไปทำงานไหนก่อน ดูตัวอย่าง |
#include <stdio.h> #include <conio.h> int main( ) {
} |
Sawasdee |
. . . . . . . .ตัวอย่างข้างบนค่อนข้างจะตรงตัว
คือ ถ้าค่าของ i
น้อยกว่า 100
พิมพ์ข้อความ Sawasdee
แจกแจงได้ดังนี้
เครื่องหมายเปรียบเทียบค่าสองค่า ที่ใช้บ่อยๆ ได้แก่
จากเครื่องหมายข้างบน เราสามารถนำไปใช้ได้แบบนี้ |
#include <stdio.h> #include <conio.h> int main( ) {
} |
Sawasdee1 Sawasdee4 |
. . . .. . .จะเห็นว่าโปรแกรมจะพิมพ์ข้อความมาสองบรรทัด
เพราะเงื่อนไขต่อไปนี้
ถูกต้อง
. . . . . . . .ที่เหลือไม่ถูกต้อง ก็จะไม่พิมพ์ออกมา จำเครื่องหใายเปรียบเทียบไว้นะครับว่ามีอะไรบ้าง ต่อไปเป็นการเปรียบเทียบค่าจากตัวแปรสองตัว |
#include <stdio.h> #include <conio.h> int main( ) {
} |
Sawasdee1 Sawasdee4 |
. . . . . . . .เรายังสามารถเปรียบเทียบหลายๆ ชั้นได้โดยใช้เครื่องหมายวงเล็กครอบ แบบนี้ |
#include <stdio.h> #include <conio.h> int main( ) {
} |
Sawasdee |
. . . . . . . .คราวนี้มีเครื่องหมายประหลาด
โผล่มาแล้ว ฮ่า ฮ่า
ฮ่า ไม่ยากๆ
เนื่องจากมีการเปรียบเทียบซ้อนกันหลายชั้น
เราก็ต้องมีเครื่องหมายบอก
แปลได้ว่า
. . . . . . . .ถ้าค่าของ i น้อยกว่า 100 หรือ ค่าของ i น้อยกว่า ค่าของ j แปลเป็นภาษามนุษย์ก็ได้แบบนี้ละ นอกจากนั้นก็ต้องมีเครื่องหมายอื่นๆ อีกเพื่อความหลากหลายในการเปรียบเทียบข้อมูล ดังนี้
. . . . . . . .ถ้า, หรือ, และ แค่นี้ละครับไม่มีอะไรมาก เราก็นำมาใช้งานแบบนี้ |
#include <stdio.h> #include <conio.h> int main( ) {
} |
Sawasdee1 Sawasdee2 |
แล้วถ้าเราต้องการสร้างเงื่อนไขที่ซ้อนลงไปอีก คือ มี if หลายๆชั้นเราจะทำอย่างไร ดูตัวอย่างการใช้คำสั่ง if ซ้อน if |
#include <stdio.h> #include <conio.h> int main( ) {
} |
Sawasdee1 |
. . . . . .จะเห็นคำสั่งเพิ่มเข้ามาอีกคือ else จะเป็นการดำเนินดารเปรียบเทียบต่อจากรายการ if ก่อนหน้านั้นภ้าไม่เป็นจริง คือ ถ้า เงื่อนไข if( i > 100 ) ไม่เป็นจริง ก็จะมาทำเงื่อนไขต่อที่ if( i < 100) ทันที งงไหม ?? ก็ไม่มีอะไรมาก เหมือนโซ่ คล้องกันไว้แค่นั้นเอง ถ้าเงื่อนไขแรกเป็นจริง ก็ไม่ต้องมาทำเงื่อนไขที่สองงัย แต่ถ้าไม่มี else ก็จะทำตามเงื่อนไขทั้งหนึ่ง และ สองลองเปรียบเทียบดูนะครับ อยากลองหลายๆ ชั้นก็ใส่ else ต่อท้ายเข้าไป คราวนี้มาดูอีกตัวอย่าง |
#include <stdio.h> #include <conio.h> int main( ) {
} |
Sawasdee1 ha ha ha |
. . . . . . . .คราวนี้เราใส่ขอบเขตการทำงานเข้าไป ก็ไม่ยากอะไรอีกนั่นละ ลองไม่ใส่ขอบเขตเข้าไปสิครับ ฮ่า ฮ่า ฮ่า ลองดูๆ จากตัวอย่างทั้งหมด เป็นการใช้คำสั่ง if ในการกำหนดเงื่อนไข และใช้เครื่องหมายเปรียบเทียบอีกทีหนึ่ง ต่อไปเป็นคำสั่งกำหนดเงื่อนไขอีกรูปแบบหนึ่ง ดูตัวอย่าง |
#include <stdio.h> #include <conio.h> int main( ) {
} |
Sawasdee1 |
. . . . . . . .คำสั่ง switch จะมีความสะดวกมากกว่า คำสั่ง if ในกรณีที่มีเปรียบเทียบมากๆ การใช้ if เพียงคำสั่งเดียว คงไม่สะดวกเป็นแน่แท้ ลองเปรียบเทียบกับตัวอย่างข้างล่างดูนะครับ ทำงานเหมือนกัน |
#include <stdio.h> #include <conio.h> int main( ) {
} |
Sawasdee1 |
. . . . . . . .เมื่อเรารู้จักการกำหนดเงื่อนไขเบื้องต้นแล้ว ให้ลองนำความรู้จากบทต้นๆ มาทำการเขียนเปรียบเทียบกัน ดูนะครับ ลองเขียนเงื่อนไขภายใน function ของเราเอง หรือการส่งค่า รับค่า ลองดู ไม่ยากๆ |
if( i < 100 ) printf( "Sawasdee\n" ); //<--------
คำสั่ง if แปลว่า ถ้า < น้อยกว่า > มากกว่า == เท่ากับ <= น้อยกว่หรือเท่ากับ >= มากกว่าหรือเท่ากับ if( i < 100 ) printf( "Sawasdee 1\n" ); //<-------- เปรียบเทียบว่าน้อยกว่า 100 หรือไม่ if( i > 100 ) printf( "Sawasdee 2\n" ); //<-------- เปรียบเทียบว่ามากกว่า 100 หรือไม่ if( i == 100 ) printf( "Sawasdee 3\n" ); //<-------- เปรียบเทียบว่าเท่ากับ 100 หรือไม่ if( i <= 100 ) printf( "Sawasdee 4\n" ); //<-------- เปรียบเทียบว่าน้อยกว่าหรือเท่ากับ 100 หรือไม่ if( i >= 100 ) printf( "Sawasdee 5\n" ); //<-------- เปรียบเทียบว่ามากกว่าหรือเท่ากับ 100 หรือไม่ if( i < 100 ) printf( "Sawasdee 1\n" ); else //<--------- เพิ่มเข้ามา if( i < 50 ) printf( "Sawasdee 2\n" ); switch( i ) //<----- ดูตรงนี้ {
} |
. . . . . . . .วันนี้ก็ได้เรื่องการสร้าง การกำหนดเงื่อนไขและเปรียบเทียบไปบาง ส่วนลองหัดเขียนดูตามตัวอย่างนะครับ เพราะไม่ยากอะไร แล้วต่อไป จะเป็นการเข้าเงื่อนไขแบบวนรอบ หรือ loop คอยติดตามนะครับ |