310 likes | 508 Views
การทำซ้ำในภาษาซี. การวนรอบ (Loop). ในภาษา C มีการวนรอบดังนี้ for,while,do-while for -> กำหนดจำนวนรอบที่แน่นอนได้ while -> วนรอบหากเงื่อนไขเป็นจริง do-while -> วนรอบหากเงื่อนไขเป็นจริง รอบแรกจะทำเสมอ. หลักการวนลูปในภาษาซี.
E N D
การวนรอบ (Loop) • ในภาษา C มีการวนรอบดังนี้ • for,while,do-while • for -> กำหนดจำนวนรอบที่แน่นอนได้ • while -> วนรอบหากเงื่อนไขเป็นจริง • do-while -> วนรอบหากเงื่อนไขเป็นจริงรอบแรกจะทำเสมอ
หลักการวนลูปในภาษาซี • คอมพิวเตอร์จะทำงานวนซ้ำในชุดคำสั่งที่กำหนด และมีการตรวจสอบเงื่อนไขการทำซ้ำเรียกว่าการวนลูป ชุดคำสั่ง LOGO
การวนลูปโดยใช้คำสั่ง for • การวนลูปด้วยคำสั่ง for มีจำนวนรอบการทำซ้ำที่แน่นอน และเรียงลำดับ • มีรูปแบบการใช้งาน ดังนี้ • ตัวอย่าง • for(i = 0 ;i < 10 ;i++) { } • for(m=5;m < 20;m+=2) { } • for(x=20;x>1;x--) { } for(ค่าเริ่มต้น ; เงื่อนไข; การเพิ่ม/ลดค่าตัวแปร)
Flowchart ค่าเริ่มต้น เงื่อนไข N Y Action การเพิ่ม/ลดค่า
1. กำหนดค่าเริ่มต้นให้กับตัวแปรควบคุม 2. ตรวจสอบเงื่อนไข 4. Updateค่าตัวแปรควบคุม 3. กระทำ statementภายในลูป การวนลูปโดยใช้คำสั่ง for • ตัวอย่างที่ 1 int i; { for (i = 1; i<=5; i++) printf (“Number %d\n”, i); } LOGO
การวนลูปโดยใช้คำสั่ง for • Flowchart i = 1 i = 1 true Printf (“Number %d\n”, i) Printf (“Number %d\n”, i) i <= 5 i++ i++ false LOGO
การวนลูปโดยใช้คำสั่ง for • ผลลัพธ์ Number 1 Number 2 Number 3 Number 4 Number 5 LOGO
การวนลูปโดยใช้คำสั่ง for • ตัวอย่างที่ 2 for (i = 5; i>=0; i--) { printf (“Number %d\n”, i); } LOGO
การวนลูปโดยใช้คำสั่ง for • Flowchart i = 5 true Printf (“Number %d\n”, i) i >= 0 i-- false LOGO
การวนลูปโดยใช้คำสั่ง for • ผลลัพธ์ Number 5 Number 4 Number 3 Number 2 Number 1 Number 0 LOGO
ตัวอย่าง • int i,m; • m = 2; • for(i=0;i<10;i++) • { • printf(“m = %d”,m); • m++; • } Output : ? • int m = 20,i; • for(i=50;i>1;i--) • { • m++; • } • printf(“m = %d”,m); Output : ?
ทดลองเขียน พิมพ์ 10 ครั้ง รับค่าและพิมพ์ออก10 ค่า
แบบฝึกหัด • จงเขียนโปรแกรมเพื่อวนรอบ 20 รอบ ในแต่ละรอบให้พิมพ์คำว่า Good Morning • จงเขียนโปรแกรมสูตรคูณแม่ 2 • จงเขียนโปรแกรมสูตรคูณตามที่ผู้ใช้ป้อนทางคีย์บอร์ด
การวนลูปโดยใช้คำสั่ง For ซ้อน For • มีรูปแบบการใช้งาน ดังนี้ for(ค่าเริ่มต้น ; เงื่อนไข; การเพิ่ม/ลดค่าตัวแปร) for(ค่าเริ่มต้น ; เงื่อนไข; การเพิ่ม/ลดค่าตัวแปร) { คำสั่ง for ; //ลูปใน }
ตัวอย่างโปรแกรมแสดงตารางสูตรคูณด้วยคำสั่ง for • #include <stdio.h> • #include <conio.h> • main () • { • int i, j; • for (i=2; i<=12; i++) //for ลูปนอก • for (j=1; j<=12; j++) //for ลูปใน • printf ("%d x %d = %d\n", i, j, i*j); • getch(); • } LOGO
แบบฝึกหัด • จงใช้คำสั่ง For เพื่อเขียนโปรแกรมสูตรคูณ โดยมีผลลัพธ์การทำงานดังนี้ Output LOGO
การใช้คำสั่ง For ร่วมกับคำสั่งอื่น ๆ LOGO
ตัวอย่างโปรแกรม • จงเขียนโปรแกรมแสดงเลข 1-20 โดยให้แสดงเครื่องหมาย * ที่ตัวเลขที่ 3 หารลงตัวและแสดงตัวเลขเหล่านั้นในอีกบรรทัดด้วย โดยมีผลลัพธ์การทำงานดังนี้ LOGO
แบบฝึกหัด • เขียนโปรแกรมให้นับทั้งหมด10 ครั้ง โดยแต่ละครั้งให้แสดงตัวเลขออกมาตั้งแต่ 1 ถึง 10 และเมื่อนับถึง 4 ให้แสดงคำว่า FOUR แทนที่จะแสดงตัวเลข 4 และเมื่อนับถึง 7 ให้แสดงคำว่า SEVEN แทนที่จะแสดงตัวเลข 7 ดังผลลัพธ์ต่อไปนี้ Output 1 2 3 FOUR 5 6 SEVEN 8 9 10 LOGO
โปรแกรมเขียนรูป 3 เหลี่ยมด้วยคำสั่ง for • Output LOGO
ตัวอย่างใช้ for ลูปในการเขียนโปรแกรมคำนวณหาผลรวม • จงเขียนโปรแกรมคำนวณค่าต่อไปนี้ • 1 + 2 + 3 + ... + 100 LOGO