ใบงานที่
7
โครงสร้างควบคุมแบบทำซ้ำ
1. จุดประสงค์การเรียนรู้
เพื่อให้ผู้เรียนสามารถเขียนโปรเเกรมโครงสร้างควบคุมแบบทำซ้ำด้วยคำสั่ง
for
ไดถูกต้อง
2. แนวคิด
การเขียนโปรเเกรมทำซ้ำหรือที่เรียกว่าลูป (Loop) เป็นการกระทำในหนึ่งกระบวนการหลายครั้งโดยมีเงื่อนไขความคุม
ซึ่งในหน่วยนี้จะขอกล่าวถึงคำสั่งที่เป็นโครงสร้างแบบทำซ้ำ 4 รูปแบบ คือคำวั่งทำซ้ำเเบบ while คำสั่งทำซ้ำแบบ do-while
คำสั่งทำแบบซ้ำ for และคำสั่งทำซ้ำเเบบซ้อน
ซึ่งการเลือกใช้โครงสร้างแบบทำซ้ำแต่ล่ะรูปแบบขึ้นอยู่กับลักษณะของงานและผลลัพธ์ที่ต้องการ
คำสั่ง for เป็นคำสั่งโครงสร้างแบบทำซ้ำที่จะมีการทดสอบเงื่อนไขก่อนการทำคำสั่งในลูป
โดยหากเงื่อนไข เป็นจริง จะทำคำสั่งในลูปไปเรื่อย ๆ จนกว่าเงื่อนไขเป็นเท็จ
จึงออกนอกลูปมีรูปแแบบการใช้
คำสั่งดังนี้
for
(กำหนดค่าเริ่มต้น;เงื่อนไข;การเปลี่ยนค่าตัวเเปร)
{
คำสั่งที่ 1;
.........
คำสั่งที่ n;
}
คำสั่งถัดไป;
3. วิธีการดำเนินการ
(1) ผู้สอนถึงหลักการเขียนโปรเเกรมโครงสร้างควบคุมแบบซ้ำด้วยคำสั่ง for
(1) ผู้สอนถึงหลักการเขียนโปรเเกรมโครงสร้างควบคุมแบบซ้ำด้วยคำสั่ง for
(2)
ผู้เรียนศึกษาใบความรู้เรื่องการเขียนโปรเเกรมโครงสร้างควบคุมแบบซ้ำด้วยคำสั่ง for
(3)
ผู้เรียนทำใบงานที่ 7 เรื่องการเขียนโปรเเกรมโครงสร้างควบคุมแบบซ้ำด้วยคำสั่ง for
4. คำชี้เเจง ให้ผู้เรียนเขียนโปรเเกรมตามโครงสร้างภาษา C 1 - N (N หมายถึง ค่าตัวเลขที่รับเข้ามาทางแป้นพิมพ์) ด้วยคำสั่ง for
แบบทดสอบหลังเรียนที่ 7
โครงสร้างควบคุมแบบทำซ้ำ
1.ลูปประเภทใดต่อไปนี้ จะมีการตรวจสอบเงื่อนไขก่อนเสมอ ก. for
ข. do-while
ค. while
ง. ถูกทุกข้อ
2. จากโปรแกรม ถ้าเปลี่ยนส่วนของโปรแกรมจาก while(x <= 10) เป็น while(x <= 15) ผลลัพธ์ที่ได้คืออะไร
#include<stdio.h>
main()
{
int x=1;
int sum=0;
while(x <= 10)
{ sum = sum+x;
x++;
}
print f (“Sum of 1-10 = %d”,sum);
main()
{
int x=1;
int sum=0;
while(x <= 10)
{ sum = sum+x;
x++;
}
print f (“Sum of 1-10 = %d”,sum);
}
ก. Sum of 1-15 = 78
ข. Sum of 1-15 = 9
ค. Sum of 1-15 = 105
ง. Sum of 1-15 = 12
ข. Sum of 1-15 = 9
ค. Sum of 1-15 = 105
ง. Sum of 1-15 = 12
3.โครงสร้างแบบใดมีลักษณะการทำงานการวนรอบเพื่อทำงานซ้ำจะเริ่มต้นจากการทำงานตามคำสั่งของ
do ก่อนหนึ่งรอบแล้วจึงเริ่มตรวจสอบเงื่อนไขที่คำสั่ง while
ก. while
ก. while
ข. for
ค. do while
ง. switch
4. คำสั่งให้ออกจากวงจรการทำงานแบบวนซ้ำ คือ
ก. go to
ข. switch
ค. break
ง. continue
5. คำสั่งให้กลับไปทำงานยังคำสั่งแรกของคำสั่งควบคุม คือ
ก. go to
ข. switch
ค.break
ง.continue
6. คำสั่งแสดงการวนซ้ำเพื่อแสดงค่าจำนวนเต็ม a ที่มีค่าเป็น
5, 4, 3, 2 และ 1 คือ
ก. for(a=1; a<=5; a++)
print f(“%d”,a); ข. for(a=1; a>5; a++)
ก. for(a=1; a<=5; a++)
print f(“%d”,a); ข. for(a=1; a>5; a++)
print
f(“%d”,a);
ค. for(a=5; a<=5; a--)
print f(“%d”,a);
ค. for(a=5; a<=5; a--)
print f(“%d”,a);
ง. for(a=5; a>=1; a--)
print f(“%d”,a);
print f(“%d”,a);
7. จากชุดคำสั่งข้างต้น อยากทราบว่า การทำงานของลูปมีกี่รอบ
for(k=0
; k<=n ; k++)
ก. 10 รอบ
ข. n รอบ
ค. n + 1 รอบ
ก. 10 รอบ
ข. n รอบ
ค. n + 1 รอบ
ง. 0 รอบ
8.
จากคำสั่ง if ((num% 2)==0)
ก. เอา 0 ไปเก็บไว้ใน num% 2
ข. ถ้า num หารด้วย 2 เหลือเศษ 0 จริง
ค. ถ้าค่าใน num เท่ากับ 0 จริง
ก. เอา 0 ไปเก็บไว้ใน num% 2
ข. ถ้า num หารด้วย 2 เหลือเศษ 0 จริง
ค. ถ้าค่าใน num เท่ากับ 0 จริง
ง. ถ้าค่าใน num หารด้วย 2 จริง
9.
ข้อใดการเขียนรูปเเบบใช้คำสั่ง do...while
ก. do...while{};
ข. do...while()
ค. do...while;
ง. do...while();
ก. do...while{};
ข. do...while()
ค. do...while;
ง. do...while();
10.
ข้อใดเขียนรูปแบบการใช้คำสั่ง while ได้ถูกต้อง
ก. while (เงื่อนไข){}
ข. while {}
ค. while ();
ง. while (){};
ก. while (เงื่อนไข){}
ข. while {}
ค. while ();
ง. while (){};
ไม่มีความคิดเห็น:
แสดงความคิดเห็น