Week 6 การทำซ้ำโดย for loop

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
คำสั่งควบคุมในโปรแกรม Interactive C
Advertisements

อัลกอริทึ่มทำงานวนซ้ำ
ครั้งที่ 4 “for statement”
คำสั่ง while และ คำสั่ง do..while
การเขียนโปรแกรม แบบมีโครงสร้าง (ต่อ)
Control Statement for while do-while.
บทที่ ๖ หลักการแก้ปัญหาด้วยคอมพิวเตอร์
การโปรแกรมควบคุมแบบทำงานซ้ำ
บทที่ 3 ตอนที่ 1 คำสั่งเงื่อนไขและการตัดสินใจ(p
Lecture no. 5 Control Statements
ตัวอย่าง Flowchart.
คำสั่ง while ควบคุมการทำงานวนซ้ำ กรณีระบบงานมีลักษณะตรวจสอบเงื่อนไขก่อน แล้วเข้าสู่ส่วนลำดับงานคำสั่งที่กำหนดไว้ การเขียนคำสั่ง while ต้องกำหนดนิพจน์แบบตรรกะเป็นเงื่อนไขมีค่าในหน่วยความจำเป็น.
ผังงานโปรแกรม (Program Flowchart)
บทที่ 5 การทำงานแบบวนซ้ำ
CE 112 บทที่ 5 การทำซ้ำในภาษา C
Repetitive Statements (Looping)
อ.อรวรรณ เชาวลิต For คำสั่งวนซ้ำ อ.อรวรรณ เชาวลิต
โครงสร้างควบคุม 1. โครงสร้างควบคุมแบบวนทางเลือก
การควบคุมทิศทางการทำงานของโปรแกรม
WHILE..DO คำสั่งควบคุมให้ทำงานซ้ำ โดยที่ต้องตรวจสอบเงื่อนไขก่อนที่จะทำ
คำสั่ง Repeat...Until คำสั่งควบคุมให้ทำงานซ้ำ
ตัวอย่างคำสั่ง FOR.
Looping การวนรอบ บทที่ 4.
คำสั่งควบคุม (Control Statement)
คำสั่งควบคุมเงื่อนไข และการทำงานเป็นรอบ
หน่วยที่ 4: คำสั่งควบคุมโปรแกรม (Control Flow Command)
คำสั่งควบคุมการทำงาน
สุพจน์ สวัตติวงศ์ gamepad.pigcanfly.com
การเขียนโปรแกรมภาษาซี
Chapter 7 Iteration Statement
โครงสร้างควบคุมการทำงาน
ครูรัตติยา บุญเกิด.
ครูรัตติยา บุญเกิด.
การทำซ้ำด้วยคำสั่ง while
การทำซ้ำด้วย คำสั่ง for ง การเขียนได นามิกเว็บเพจ ศูนย์คอมพิวเตอร์ โรงเรียนปลวกแดง พิทยาคม.
การเขียนเว็บเพจด้วยภาษา php ศูนย์คอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
คำสั่ง for ง30212 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์
การเขียนผังงาน.
คำสั่งควบคุมการทำงานของ ActionScripts
Week 3 Flow Control in PHP
Week 5 การทำซ้ำโดย while loop และ do while loop
เสรี ชิโนดม ข้อความสั่งควบคุม เสรี ชิโนดม
Week 6 การทำซ้ำโดย for loop
Chapter 5 การทำซ้ำโดย while loop และ do while loop
Week 5 การทำซ้ำโดย while loop และ do while loop
คำสั่งควบคุมขั้นตอน Flow control statements
การเขียนโปรแกรมเบื้องต้น
หลักการเขียนโปรแกรม ( )
CHAPTER 4 Control Statements
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
PHP การตรวจสอบเงื่อนไข.
คำสั่งทำซ้ำ for คำสั่ง for เป็นคำสั่งทำซ้ำในลักษณะ Definite loop คือทราบจำนวนรอบที่แน่นอนในการทำงาน ซึ่งจะใช้ตัวแปร 1 ตัวในการนับจำนวนรอบว่าครบตามกำหนดหรือไม่
อัลกอริทึ่มทำงานวนซ้ำ
Chapter 6 Repetition Structure[2] ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ ng.
อ. วชิระ หล่อประดิษฐ์. ตัว ดำเนินกา ร ศัพท์เฉพาะตัวอย่ าง ผลลัพธ์ ให้ a=3; b=2; Greater thana > b;True
หลักการเขียนโปรแกรม ( )
Computer Programming Asst. Prof. Dr. Choopan Rattanapoka
Week 6 For loop, break and continue (Control Structure 3)
Flowchart การเขียนผังงาน.
การเขียนโปรแกรมแบบลำดับ
การทำงานแบบวนซ้ำ (Iteration).
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
Computer Programming การเขียนโปรแกรม คอมพิวเตอร์ สัปดาห์ที่ 6 คำสั่งควบคุมการทำงานแบบ เงื่อนไขและคำสั่งควบคุมการ ทำงานแบบวนซ้ำ.
Week 5 While and Do-While loop (Control Structure 2)
รูปแบบของการใช้คำสั่ง for for( ตัวแปร = ค่าเริ่มต้น ; นิพจน์ตรรกะ ; ค่าเพิ่มหรือค่าลด ) { statement(s); } ตัวอย่าง กรณีกำหนดการวนซ้ำเป็นค่าคงที่ For(n=1;n
Nested loop.
PHP: [5] คำสั่งควบคุม (Control statement)
บทที่ 7 การเขียนโปรแกรม แบบวนรอบทำซ้ำ (Loop)
บทที่ 7 การเขียนโปรแกรม แบบวนรอบทำซ้ำ (Loop) Part1
บทที่ 7 การเขียนโปรแกรม แบบวนรอบทำซ้ำ (Loop) Part2
ใบสำเนางานนำเสนอ:

Week 6 การทำซ้ำโดย for loop

Agenda for Statement ตัวดำเนินการสำหรับกำหนดค่าแบบย่อ การใช้งาน break และ continue ในคาบเรียนนี้ จะเป็นวิธีการใช้งาน Loop ต่อจากคาบก่อน นั่นก็คือ การใช้งาน for Loop และ การใช้งาน break และ continue

for Statement

for Statement ในการเขียนโปรแกรม เมื่อต้องการให้มีการประมวลผลซ้ำ (Loop) โดยที่เราทราบจำนวนของการทำซ้ำ เราสามารถใช้ for Loop แทน while Loop ได้ ตัวอย่าง เช่น ทำการคำนวณค่าเฉลี่ยของกลุ่มตัวเลขจำนวน 10 ค่า เมื่อมีการกำหนดหรือทราบเงื่อนไขของการทำซ้ำใน Loop ที่ทราบจำนวนของการทำซ้ำ หรือรู้ว่าต้องการทำซ้ำกี่ครั้ง สามารถใช้งาน for Statement ได้ แต่ก็ยังสามารถใช้งาน while และ do while ได้อยู่เช่นกัน

Syntax for (expression1; expression2; expression3) { statement 1; … statement n; } เมื่อ expression1: การกำหนดค่าเริ่มต้นตัวแปรที่ใช้ในการคุมการวนรอบ expression2: เงื่อนไขของการวนรอบ expression3: การเปลี่ยนแปลงค่าของตัวแปรควบคุมแต่ละรอบ รูปแบบของการใช้งาน for Loop จะมีการกำหนดค่าเริ่มต้นของตัวแปรควบคุมการทำซ้ำ เงื่อนไขของการทำซ้ำ และการเปลี่ยนแปลงค่าของตัวแปรที่ควบคุมการทำซ้ำอยู่ในคำสั่ง for (expresssion1; expression2; expression3) เลย จะแตกต่างจาก while และ do while ที่ ใน while(condition) จะมีเพียงเงื่อนไขที่จะทำซ้ำเท่านั้น ส่วนค่าเริ่มต้นและการเปลี่ยนแปลงค่าของตัวแปควบคุมการทำซ้ำ จะอยู่ที่อื่น เช่น การกำหนดค่าเริ่มต้นจะอยู่ ภายนอก ก่อนเข้า Loop หรือ การเปลี่ยนแปลงค่าของตัวแปลอยู่ภายใน Statement ที่อยู่ในลูป เป็นต้น

Syntax สามารถเปรียบเทียบกับการใช้ while ได้ดังนี้ expression1; statement1; … statementn; expression3; }

Flowchart ตัวอย่าง สำหรับ for (counter = 1; counter <=10; counter = counter+1) { statement; } Entry counter = 1 counter <= 10 False True Flowchart นี้จะเป็นตัวอย่างเมื่อ ตัวแปรสำหรับควบคุมการทำซ้ำคือ counter ลำดับการทำงานคือ เริ่มต้นการทำงานของ Loop ตัวแปร counter จะถูกตั้งค่าให้เท่ากับ 1 จากนั้นจะมีการทดสอบว่า ค่า counter นั้นน้อยกว่าหรือเท่ากับ 10 หรือไม่ หาก เป็นจริง ก็จะทำงาน ตาม statement ภายใน และ เพิ่มค่าให้ counter ไปอีก 1 แล้วจะย้อนกลับมาทดสอบเงื่อนไขใหม่ statement counter = counter + 1 Exit

Example โปรแกรม นับ 1 ถึง 10 และแสดงผลการนับออกมาทีละตัว โดยใช้ for Loop ให้ดูเปรียบเทียบกับโปรแกรมเดียวกันเมื่อใช้ while Loop และ do while Loop จากคาบก่อน ตัวอย่างนี้ จะเป็นโปรแกรมที่ทำงานเช่นเดียวกับ ตัวอย่างในคาบก่อน คือ พิมพ์ตัวเลขตั้งแต่ 1 ถึง 10 แต่เปลี่ยนไปใช้ for Loop

Example #include <stdio.h> int main() { int counter; printf(“Print counter from 1 to 10\n”); for (counter = 1; counter <=10; counter = counter + 1) { printf(“%d ”, counter); } return 0; จะเห็นได้ว่า การกำหนดค่าให้ ตัวแปร counter เงื่อนไขการทำซ้ำ การเปลี่ยนแปลงค่าของตัวแปร counter จะอยู่ในคำสั่ง for (counter = 1; counter <=10; counter = counter + 1) ทั้งหมด Print counter from 1 to 10 1 2 3 4 5 6 7 8 9 10 ตัวอย่าง Output จากการทำงาน

ตัวดำเนินการสำหรับกำหนดค่าแบบย่อ

ตัวดำเนินการสำหรับกำหนดค่าแบบย่อ ในการเพิ่มค่าของตัวแปรควบคุมแต่ละรอบ หรือส่วนสุดท้ายของคำสั่งใน while, do while, for เราสามารถใช้ตัวดำเนินการสำหรับกำหนดค่า (Assignment Operator) แบบย่อได้ ดังตาราง1 เมื่อกำหนดให้ c = 3, d = 5, e = 4, f = 6, g = 12 ตัวดำเนินการ ตัวอย่างการใช้งาน ความหมาย การกำหนดท่าที่ได้ += c += 7 c = c + 7 c ให้เท่ากับ 10 -= d -= 4 d = d – 4 d ให้เท่ากับ 1 *= e *= 5 e = e * 5 e ให้เท่ากับ 20 /= f /= 3 f = f / 3 f ให้เท่ากับ 2 %= g %= 9 g = g % 9 g ให้เท่ากับ 3 ตาราง1 ตัวอย่างการใช้งานตัวดำเนินการสำหรับกำหนดค่าแบบย่อ

ตัวดำเนินการสำหรับการกำหนดค่าแบบย่อ นอกการจากนั้น ยังมีตัวดำเนินการ ++ และ – สำหรับเพิ่มและลดค่าทีละ 1 การใช้งานมีสองแบบ คือ วางข้างหน้า และ วางข้างหลังตัวแปร หากวางข้างหน้าตัวแปร ตัวแปรจะถูกเพิ่มหรือลดค่าก่อน จะถูกนำค่าไปใช้งาน หากวางข้างหลังตัวแปร ตัวแปรจะถูกค่าไปใช้งานก่อน แล้วจึงถูกเพิ่มหรือลดค่า ดังแสดงในตาราง2 ตัวดำเนินการ ตัวอย่างการใช้งาน ความหมาย ++ ++a เพิ่มค่า a ขึ้น 1 แล้วจึงนำค่า a ไปใช้ a++ ใช้ค่า a ปัจจุบัน แล้วเพิ่มค่า a ขึ้น 1 -- --b ลดค่า b ลง 1 แล้วจึงนำค่า b ไปใช้ b-- ใช้ค่า b ปัจจุบัน แล้วลดค่า b ลง 1 ตาราง2 ตัวอย่างการใช้งานตัวดำเนินการสำหรับการเพิ่มและลดค่าครั้งละหนึ่ง

ตัวดำเนินการสำหรับการกำหนดค่าแบบย่อ ตาราง3 ลำดับการทำงานของตัวดำเนินการต่างๆ ว่าทำงานจากซ้ายไปขวาหรือขวาไปซ้าย ตัวดำเนินการ ลำดับการทำงานในขั้นเดียวกัน ++ -- + - ! ขวามาซ้าย * / % ซ้ายมาขวา + - < <= > >= == != && || ? : = += -= *= /= %= , ตาราง3 ลำดับการทำงาน

การใช้งาน break และ continue

การใช้ break และ continue การใช้งาน โดยทั่วไปจะนำไปไว้ในลูป และใช้ break หรือ continue โดยใช้ if เพื่อช่วยในการตรวจสอบเงื่อนไข คำสั่ง break จะทำให้ Loop หยุดการทำงานและโปรแกรมออกจาก Loop ไป คำสั่ง continue จะทำให้ Loop ข้ามการทำงานของ Statement ที่เหลือ แต่จะกลับเริ่มต้นการทำงานของ Loop ในรอบถัดไป คือไปเริ่มต้นที่การตรวจสอบเงื่อนไขของ Loop ใหม่เลย

break การใช้งาน break ในประโยคคำสั่งทำซ้ำ while, do while, for หรือ switch จะทำให้ออกจากประโยคคำสั่งทำซ้ำทันที จะใช้ break เพื่อให้โปรแกรมกระโดดข้ามไปทำงานในส่วนที่เหลือที่อยู่นอก Loop ทันที ตัวอย่าง เป็นการเขียนโปรแกรม แสดง counter โดยใช้ for loop หาก counter มีค่าเท่ากับ 5 จะต้องออกจาก for loop ทันที

Example ตัวอย่าง output จากการทำงาน #include <stdio.h> int main() { int x; for (x = 1; x <= 10; x++) { if (x == 5) { /* if x is 5, terminate loop */ break; } printf(“%d”, x); printf(“\nBroke out of loop at x == %d\n, x); return (0); ในตัวอย่าง จะมีการใช้งาน break ภายในเงื่อนไขว่า หาก ตัวแปร x มีค่าเท่ากับ 5 ให้ break ออกไปจาก Loop ทันที 1 2 3 4 Broke out of loop at x == 5 ตัวอย่าง output จากการทำงาน

continue การใช้งาน continue ในประโยคคำสั่งทำซ้ำ while, do while, for จะมีผลทำให้การทำงานกระโดดข้ามคำสั่งที่เหลืออยู่ใน ศLoop แล้วกลับไปเริ่มทำงานในรอบต่อไปใหม่ทันที สำหรับ while และ do while เงื่อนไขของการวนรอบ จะถูกทดสอบทันที สำหรับ for ตัวแปรนับจะถูก ลด/เพิ่ม ค่า แล้วทำการทดสอบเงื่อนไขการวนรอบ ตัวอย่าง เป็นการเขียนโปรแกรมแสดง counter โดยใช้ while loop แต่เมื่อ counter มีค่าเท่ากับ 5 จะให้กระโดดข้ามคำสั่ง printf ออกไป แล้วไปเพิ่ม counter จาก การทำงานของ while loop ทันที

Example ตัวอย่าง output จากการทำงาน #include <stdio.h> int main() { int x; for (x = 1; x <= 10; x++) { if (x == 5) { /* if x is 5, skip remaining code in loop body*/ continue; } printf(“%d”, x); printf (“\n Used continue to skip printing the value 5\n); return (0); ในตัวอย่างนี้ จะมีการใช้งาน continue เมื่อตัวแปร x มีค่าเท่ากับ 5 นั่นก็คือหมายความว่า เมื่อตัวแปร x มีค่าเท่ากับ 5 คำสั่ง printf(“%d”, x) จะถูกข้ามไป นั่นเอง และ Loop จะเริ่มการทำงานถัดไปก็คือ เพิ่มค่าตัวแปร x และทดสอบดูว่า ยังน้อยกว่าหรือเท่ากับ 10 หรือไม่ 1 2 3 4 6 7 8 9 10 Used continue to skip printing the value 5 ตัวอย่าง output จากการทำงาน