บทที่ 7 การเขียนโปรแกรม แบบวนรอบทำซ้ำ (Loop)

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Week 6 การทำซ้ำโดย for loop
Advertisements

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
Week 6 For loop, break and continue (Control Structure 3)
Computer Programming การเขียนโปรแกรม คอมพิวเตอร์ สัปดาห์ที่ 6 คำสั่งควบคุมการทำงานแบบ เงื่อนไขและคำสั่งควบคุมการ ทำงานแบบวนซ้ำ.
Week 5 While and Do-While loop (Control Structure 2)
การวนซ้ำโดยใช้โครงสร้าง for
Looping ธนวัฒน์ แซ่เอียบ.
PHPPHP การเขียนโปรแกรมคอมพิวเตอร์ 1 สาขาวิชาระบบสารสนเทศ คณะเทคโนโลยีการจัดการ.
Practical with Flowchart
บทที่ 6 บทที่ 6 คำสั่งแก้ไขปัญหาแบบ เลือก (CONDITION)
บทที่ 5 การควบคุมทิศทางการทำงานของโปรแกรม
จัดทำโดย น. ส. ดวงกมล งามอยู่เจริญ เลขที่ 8 น. ส. ณัชชา เชื้อตา เลขที่ 6 เตรียมบริหารธุรกิจปี 1.
บทที่ 4 คำสั่งควบคุม โปรแกรม. คำสั่งควบคุมโปรแกรมออกได้เป็น 2 ประเภท คือ คำสั่งแบบกำหนดเงื่อนไข (Conditional Statement) คำสั่งแบบทำงานซ้ำ (Repetitive.
การเขียนโปรแกรมภาษาปาสคาล โดยใช้โครงสร้างหลักทั้ง 3 โครงสร้าง
การวิเคราะห์ขั้นตอนวิธีการแก้ปัญหา
การใช้งาน Microsoft Excel
หลักการโปรแกรม 1 Lecture 8: การทำซ้ำ (while, do-while)
ครั้งที่ 7 รีจิสเตอร์ (REGISTER). รีจิสเตอร์ (Register) รีจิสเตอร์เป็นวงจรความจำที่ใช้ในการเก็บค่า ทางไบนารี่ ใช้ในการเก็บค่าในระหว่างการ ประมวลผลโดยใช้ฟลิป.
MEE 231 Computer Programming สัปดาห์ที่ 6 ภาษา C หลักการของโปรแกรม ชนิดของตัวแปร การดำเนินการ คำสั่งการรับค่าตัวแปร และการแสดงผล.
เรื่อง หลักการเขียนโปรแกรม เบื้องต้น จัดทำโดย นางสาวชาดา ศักดิ์บุญญารัตน์
ITERATION (LOOP) สาขางานคอมพิวเตอร์ธุรกิจอาจารย์จิรา ภรณ์ เขตกุฎี
โปรแกรมคำนวณคะแนน สหกรณ์ ตามเกณฑ์ดีเด่นแห่งชาติ กรมส่งเสริม สหกรณ์ กองพัฒนาสหกรณ์ด้านการเงิน และร้านค้า วิธีการใ ช้
LOGO ภาษาซี 1.1 อ. กฤติเดช จินดาภัทร์. LOGO ตัวอย่างโค้ดภาษาซี
คำสั่งควบคุมการทำงาน
เกม คณิตคิดเร็ว.
บทที่ 5 การใช้คำสั่ง Select Case , For Next และ Do While
บทที่ 4 การเขียนรหัสเทียม (Pseudo Code)
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
หน่วยที่ 5 โปรแกรมแบบวนรอบทำซ้ำ
บทที่ 5 อินพุตและเอาต์พุต
Chapter 4 ข้อความสั่ง เลือกทำ.
โดย อ.อภิพงศ์ ปิงยศ รายวิชา สธ312 ระบบการจัดการฐานข้อมูลทางธุรกิจ
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
โครงสร้างข้อมูลและอัลกอริทึมเบื้องต้น
บทที่ 1 สถาปัตยกรรมของระบบฐานข้อมูล (Database Architecture)
ACCOUNTING FOR INVENTORY
BC320 Introduction to Computer Programming
อาจารย์อภิพงศ์ ปิงยศ บทที่ 4 : สื่อกลางส่งข้อมูลและการมัลติเพล็กซ์ (Transmission Media and Multiplexing) Part3 สธ313 การสื่อสารข้อมูลและเครือข่ายคอมพิวเตอร์ทางธุรกิจ.
โครงสร้างภาษา C Arduino
Work Shop 1.
หน่วยการเรียนที่ 4 เรื่อง การควบคุมทิศทางการทำงาน
บทที่ 13 การจัดการไฟล์ (File Management)
Control Statement เงื่อนไขคำสั่งในโปรแกรม ภาษา C
บทที่ 8 เงื่อนไขตัดสินใจ
รายวิชา ไมโครโปรเซสเซอร์ในงานอุตสาหกรรม
บทที่ 7 การเขียนโปรแกรม แบบวนรอบทำซ้ำ (Loop) Part1
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
ขั้นตอนการออกแบบ ผังงาน (Flow Chart)
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
บทที่ 9 การทำซ้ำ (Loop).
บทที่ 7 การเขียนโปรแกรม แบบวนรอบทำซ้ำ (Loop) Part2
บทที่ 3 Programming By Wathinee duangonnam
ผู้ช่วยศาสตราจารย์จุฑาวุฒิ จันทรมาลี
คณิตศาสตร์ 1 รหัสวิชา
คำสั่งวนรอบ (Loop).
สมการเชิงเส้นตัวแปรเดียว
การสร้างแบบสอบถาม และ การกำหนดเงื่อนไข.
บทที่ 9 การเรียงลำดับข้อมูล (Sorting)
บทที่ 7 การประมวลผลอาร์เรย์
บทที่ 8 การแก้ไขข้อผิดพลาดโปรแกรม(Debugging)
ค่ารูรับแสง - F/Stop ค่ารูรับแสงที่มีค่าตัวเลขต่ำใกล้เคียง 1 มากเท่าไหร่ ค่าของรูรับแสงนั้นก็ยิ่งมีความกว้างมาก เพราะเราเปรียบเทียบค่าความสว่างที่ 1:1.
2 โครงสร้างข้อมูลแบบสแตก (STACK).
กิจกรรมที่ 7 นายปรีชา ขอวางกลาง
การเขียนโปรแกรมด้วยภาษาไพทอน การเขียนโปรแกรมแบบวนซ้ำ
Chapter 3 : Array.
การเขียนโปรแกรมด้วยภาษาไพทอน การเขียนโปรแกรมแบบทางเลือก
Decision: Single and Double Selection (if and if-else statement)
ใบสำเนางานนำเสนอ:

บทที่ 7 การเขียนโปรแกรม แบบวนรอบทำซ้ำ (Loop) รายวิชา สธ 113 การออกแบบโปรแกรมทาง ธุรกิจเบื้องต้น อ.อภิพงศ์ ปิงยศ

Overview การวนรอบทำซ้ำ (Loop) คำสั่ง while Statement คำสั่ง do-while Statement คำสั่ง for Statement คำสั่ง break และ continue

การวนรอบทำซ้ำ (Loop) ในการเขียนโปรแกรม จะมีการประมวลผลซ้ำ (Loop หรือ Iteration) เพื่อให้ โปรแกรมทำงาน ตาม Statement หรือการประมวลผลที่กำหนดไว้ ซ้ำกันมากกว่า 1 ครั้ง โดยไม่จำเป็นที่จะต้อง เขียน Statement นั้น ซ้ำไปซ้ำมาในโค้ด การทำงานจะทำงานตาม Statement ไปจนหมด แล้วถ้าหากเงื่อนไขที่กำหนดไว้ให้ทำซ้ำยังเป็น จริง โปรแกรมจะวนกลับไปทำงานตาม Statement อีกรอบจนกว่าเงื่อนไขที่กำหนดไว้จะ เป็นเท็จ จึงจะออกจากคำสั่งทำซ้ำ

ส่วนประกอบของ Iteration มีอยู่ 3 ประเภท 1) Initialization คือ การกำหนดค่าเริ่มต้นของตัว แปรที่จะเป็นเงื่อนไขในการ iteration เช่น x = 1 2) Testing คือ การทดสอบว่า เงื่อนไขที่ทำการ Iteration นั้นยังเป็นจริงหรือไม่ จะมีการทำ Iteration ไปเรื่อยๆ หากเงื่อนไขยังเป็นจริง เช่น x < 20 3) Incrementing เป็นการเปลี่ยนแปลงค่าของตัว แปรที่ใช้เป็นเงื่อนไขในการ Iteration เช่น x = x + 1 หรือ x++

ประเภทของ Iteration Statement คือ วิธีการทำให้โปรแกรมทำงานเป็น Loop ได้ ในภาษา C มีอยู่ 4 ชนิดด้วยกัน คือ while statement do-while statement for statement break and continue statement

While Statement มีการตรวจสอบเงื่อนไขก่อน หากเงื่อนไขเป็น จริง โปรแกรมจะเริ่มทำตาม Statement ที่ กำหนดไว้ แล้วกลับไปเริ่มต้นใหม่ จนกว่า เงื่อนไขจะเป็นเท็จ ถึงจะหยุดการทำงาน แล้ว ออกไปจาก Loop while (condition) { statement1; statement2; ... statementN; }

while statement flowchart expr Statement 1 Statement 2 Entry True False Exit

Example 1: พิมพ์เลข 1 ถึง 10 โดยใช้ while loop Print count from 1 to 10 1 2 3 4 5 6 7 8 9 10

Example 2: เลือกการทำงานของ ATM จากตัวเลข Menu ที่กำหนดไว้ หากเลือกตัวเลขนอกเหนือที่กำหนดไว้ จะต้องใส่ตัวเลขที่เลือกใหม่ (while)

Example 2: Output 1. Withdraw 2. Show Balance 3. Transfer Enter your choice (1-3): 5 Please input your choice correctly. Enter your choice (1-3): 1 Withdraw

do while Statement จะแตกต่างจาก while Statement ตรงที่ โปรแกรมจะเริ่มทำงานตาม Statement ที่ระบุไว้ โดยไม่มีการเช็คเงื่อนไขก่อน จากนั้นเมื่อ ทำงานเสร็จแล้วหนึ่งรอบถึงจะเช็คเงื่อนไข หาก เงื่อนไขเป็นจริง จะวนกลับไปทำซ้ำ แต่หากเงื่อนไขเป็นเท็จจะจบการทำงานแล้วออก จาก Loop ทันที do { statement1; statement2; ... statementN; } while (condition);

do while statement flowchart expr Statement 1 Statement 2 Entry True False Exit

Example 3: พิมพ์เลข 1 ถึง 10 โดยใช้ do while loop Print count from 1 to 10 1 2 3 4 5 6 7 8 9 10

Example 4: เลือกการทำงานของ ATM จากตัวเลข Menu ที่กำหนดไว้ หากเลือกตัวเลขนอกเหนือที่กำหนดไว้ จะต้องใส่ตัวเลขที่เลือกใหม่ (do-while)

Example 4: Output 1. Withdraw 2. Show Balance 3. Transfer Enter your choice (1-3): 4 Please input your choice correctly. Enter your choice (1-3): 2 Show Balance

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

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

for statement syntax [cont.] สามารถเปรียบเทียบกับการใช้ while ได้ดังนี้ initial; while (condition) { statement1; … statementn; incrementing; }

for statement flowchart Entry counter = 1 counter <= 10 statement counter = counter + 1 Exit True False ตัวอย่าง สำหรับ for (counter = 1; counter <=10; counter = counter+1) { statement; }

Example 5: พิมพ์เลข 1 ถึง 10 โดยใช้ for loop Print count from 1 to 10 1 2 3 4 5 6 7 8 9 10

ตัวดำเนินการสำหรับกำหนดค่าแบบย่อ ในการเพิ่มค่าของตัวแปรควบคุมแต่ละรอบ หรือ ส่วนสุดท้ายของคำสั่งใน while, do while, for เราสามารถใช้ตัวดำเนินการสำหรับกำหนดค่า (Assignment Operator) แบบย่อได้ ตัวดำเนินการ ตัวอย่างการใช้งาน ความหมาย ค่าที่ได้ += 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 เมื่อกำหนดให้ c = 3, d = 5, e = 4, f = 6, g = 12

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

คำสั่ง break และ continue

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

Example 6: เป็นการเขียนโปรแกรม แสดง counter โดยใช้ for loop หาก counter มีค่าเท่ากับ 5 จะต้องออกจาก for loop ทันที 1 2 3 4 Broke out of loop at x = 5

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

Example 7: เป็นการเขียนโปรแกรมแสดง counter โดยใช้ for loop แต่เมื่อ counter มีค่าเท่ากับ 5 จะให้กระโดดข้ามคำสั่ง printf ออกไป แล้วไปเพิ่ม counter จากการทำงานของ for loop ทันที 1 2 3 4 6 7 8 9 10 Used continue to skip printing the value 5