การควบคุมทิศทางการทำงานของโปรแกรม

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
การทำงานแบบเลือกทำ (Selection)
Advertisements

คำสั่ง while และ คำสั่ง do..while
การเขียนโปรแกรม แบบมีโครงสร้าง (ต่อ)
Control Statement if..else switch..case for while do-while.
Control Statement for while do-while.
การโปรแกรมควบคุมแบบทำงานซ้ำ
เฉลย Lab 10 Loop.
การควบคุมทิศทางการทำงาน
ผังงานโปรแกรม (Program Flowchart)
บทที่ 5 การทำงานแบบวนซ้ำ
บทที่ 4 การตัดสินใจในการเขียนโปรแกรม
CE 112 บทที่ 5 การทำซ้ำในภาษา C
โครงสร้างควบคุม 1. โครงสร้างควบคุมแบบวนทางเลือก
การจำลองความคิด
คำสั่งแบบมีเงื่อนไข IF Statement
การเขียนผังงานแบบโครงสร้าง
ตัวอย่างการใช้คำสั่ง IF_THEN
WHILE..DO คำสั่งควบคุมให้ทำงานซ้ำ โดยที่ต้องตรวจสอบเงื่อนไขก่อนที่จะทำ
คำสั่ง Repeat...Until คำสั่งควบคุมให้ทำงานซ้ำ
ตัวอย่างคำสั่ง FOR.
Looping การวนรอบ บทที่ 4.
คำสั่งควบคุม (Control Statement)
คำสั่งควบคุมเงื่อนไข และการทำงานเป็นรอบ
คำสั่งควบคุมการทำงาน
บทที่ 7 คำสั่งสำหรับเขียนโปรแกรม
บทที่ 11 การเขียนโปรแกรมแบบ Structured Programming และการจัดการตรวจสอบข้อผิดพลาด.
LOGO SCCS031 Principle of Computer Programming Thinaphan Nithiyuwith Program of Computer Science & Information Technology suchada/
Chapter 6 Decision Statement
Chapter 7 Iteration Statement
ครูรัตติยา บุญเกิด.
ง30212 การเขียนโปรแกรมภาษาคอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
การทำซ้ำด้วยคำสั่ง while
คำสั่ง while และ do…while
การเขียนผังงาน จุดประสงค์ 1.อธิบายความของผังงานได้
คำสั่งควบคุมการทำงานของ ActionScripts
Week 3 Flow Control in PHP
โดย อ. นัฐพงศ์ ส่งเนียม Do Loop Until โดย อ. นัฐพงศ์ ส่งเนียม
While.. loop.
Week 6 การทำซ้ำโดย for loop
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
Control Statements.
พื้นฐานการเขียนโปรแกรม
บทที่ 10 คำสั่งควบคุม OUTLINE 1. คำสั่งแบบเรียงลำดับ (Sequence)
คำสั่งควบคุมขั้นตอน Flow control statements
หลักการเขียนโปรแกรม ( )
หลักการเขียนโปรแกรม ( )
CHAPTER 4 Control Statements
การตรวจสอบเงื่อนไขใน PHP
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
วิธีการเขียนโปรแกรมเพื่อทำงานกับข้อมูล โดยที่ ข้อมูลนั้นจะต้อง 1. เป็นประเภทเดียวกัน | ตัวเลข, ตัวอักษร 2. มีขนาดเท่ากัน ? ARRAY คืออะไร.
PHP การตรวจสอบเงื่อนไข.
คำสั่งทำซ้ำ for คำสั่ง for เป็นคำสั่งทำซ้ำในลักษณะ Definite loop คือทราบจำนวนรอบที่แน่นอนในการทำงาน ซึ่งจะใช้ตัวแปร 1 ตัวในการนับจำนวนรอบว่าครบตามกำหนดหรือไม่
อัลกอริทึ่มทำงานวนซ้ำ
ตัวแปร Array แบบ 1 มิติ การเขียนโปรแกรมแบบวนซ้ำ
หลักการเขียนโปรแกรม ( )
Computer Programming Asst. Prof. Dr. Choopan Rattanapoka
การเขียน แบบวนซ้ำ , วนลูป
CONDITION Computer Programming Asst. Prof. Dr. Choopan Rattanapoka.
C-Programming บทที่ 8 การทำซ้ำ C Programming.
Flowchart การเขียนผังงาน.
Wattanapong suttapak SE, ICT University of Phayao.
การทำงานแบบวนซ้ำ (Iteration).
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
Computer Programming การเขียนโปรแกรม คอมพิวเตอร์ สัปดาห์ที่ 6 คำสั่งควบคุมการทำงานแบบ เงื่อนไขและคำสั่งควบคุมการ ทำงานแบบวนซ้ำ.
Week 5 While and Do-While loop (Control Structure 2)
Nested loop.
PHP: [5] คำสั่งควบคุม (Control statement)
ใบสำเนางานนำเสนอ:

การควบคุมทิศทางการทำงานของโปรแกรม Chapter 6 การควบคุมทิศทางการทำงานของโปรแกรม

การควบคุมทิศทางของโปรแกรมมี 2 รูปแบบคือ การตัดสินใจ (Decision) การตัดสินใจเลือกหนึ่งตัวเลือกจาก 2 ตัวเลือกที่มีมาให้ การตัดสินใจเลือกหนึ่งตัวเลือกจากตัวเลือกที่มีมาให้มากกว่า 2 ตัวเลือก การทำงานแบบวนซ้ำ(Iteration) การวนซ้ำแบบมีจำนวนรอบที่แน่นอน การวนซ้ำแบบมีจำนวนรอบที่ไม่แน่นอน คือมีการทำงานวนซ้ำไปเรื่อย ๆ จนกว่าจะถูกสั่งให้หยุดโดยการตรวจสอบว่าหยุดการทำงานได้หรือไม่ “การตัดสินใจอาศัยตัวแปรตรรกศาสตร์มาพิจารณาเปรียบเทียบ เพื่อเลือกทิศทาง”

คำสั่งตัดสินใจ If…Then เป็นคำสั่งตัดสินใจโดยตรวจสอบเงื่อนไขที่กำหนดให้เสียก่อน - หากผลการตรวจสอบเงื่อนไขเป็นจริงก็จะทำงานตามชุดคำสั่งที่อยู่หลังคำว่า Then - แต่ถ้าผลการตรวจสอบเงื่อนไขเป็นเท็จจะทำงานตามชุดคำสั่งถัดไป

รูปแบบคำสั่ง If…Then If เงื่อนไขที่ตรวจสอบ Then ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขแล้วได้ผลเป็นจริง(True) ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขแล้วได้ผลเป็นเท็จ(False) End If

คำสั่งตัดสินใจ If…Then…Else เป็นคำสั่งตัดสินใจมีสองทางเลือกคือ

รูปแบบคำสั่ง If…Then…Else If เงื่อนไขที่ตรวจสอบ Then ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขแล้วได้ผลเป็นจริง(True) Else ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขแล้วได้ผลเป็นเท็จ(False) End If

คำสั่งตัดสินใจ

รูปแบบคำสั่ง If…Then…Else แบบซ้อนกัน ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขที่1ได้ผลเป็นจริง(True) If เงื่อนไขที่ 2 Then ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขที่2ได้ผลเป็นจริง(True) Else ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขที่2ได้ผลเป็นเท็จ(False) End If ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขที่1ได้ผลเป็นเท็จ(False) End If

รูปแบบคำสั่ง If…Then…Else แบบซ้อนกัน ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขที่1ได้ผลเป็นจริง(True) Else ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขที่1ได้ผลเป็นเท็จ(False) If เงื่อนไขที่ 2 Then ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขที่2ได้ผลเป็นจริง(True) Else ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขที่2ได้ผลเป็นเท็จ(False) End If End If

การใช้ If ซ้อน If : ตัดสินใจเลือกมากกว่า 2ทางเลือก เป็นการตรวจสอบเงื่อนไขของทางเลือกที่มีไปทีละทางเลือกจนครบจำนวนทางเลือกที่มีอยู่ ตามรูปแบบโฟลว์ชาร์ตดังนี้

รูปแบบคำสั่ง If ซ้อน If If เงื่อนไขทางเลือกที่ 1 Then ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขที่1ได้ผลเป็นจริง(True) ElseIf เงื่อนไขทางเลือกที่ 2 Then ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขได้ผลเป็นจริง(True) ElseIf เงื่อนไขทางเลือกที่ 3 Then ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขได้ผลเป็นจริง (True) . . . . Else ชุดคำสั่งเมื่อมีการตรวจสอบเงื่อนไขได้ผลเป็นเท็จ(False) End If

Exercise รับจำนวนเงินมาแล้วสามารถนำมาแลกเหรียญ 10 เหรียญ 5 เหรียญ 2 เหรียญ 1 บาท เหรียญ 50 สตางค์ และเหรียญ 25 สตางค์ ได้ทั้งสิ้น กี่เหรียญ คำนวณค่าบัตรผ่านประตูสวนสนุก โดย เด็กสูงไม่เกิน 100 cm. ไม่คิดค่าบัตรผ่านประตู เด็กสูงไม่เกิน 120 cm. คิดค่าบัตรผ่าน 20% ของราคาบัตรเด็ก เด็กสูงไม่เกิน 130 cm. คิดค่าบัตร 50% ของราคาบัตรเด็ก เด็กสูงเกิน 130 cm. ขึ้นไป คิดราคาบัตรเด็ก คือ 120 บาท

Select…Case : ตัดสินใจเลือกมากกว่า 2 ทางเลือก เป็นคำสั่งตัดสินใจที่มีการทำงานเหมือนคำสั่ง If…Then…Else คือ เลือกทางใดทางหนึ่งจากทางเลือกที่มีมากกว่า 2 ทาง ในแต่ละทางเลือกจะมีการกำหนดเงื่อนไขของแต่ละทางและจะตรวจสอบเงื่อนไขแต่ละทางเลือกหากพบว่าทางเลือกไหนมีเงื่อนไขเป็นจริงก็จะทำชุดคำสั่งภายในทางเลือกนั้นโดยไม่พิจารณาทางเลือกอื่นที่ยังไม่ได้ตรวจสอบ Select Case =? Case Is: 1 Case Is: 2 Case Is: 3 Case Is: N Statement

Select…Case : ตัดสินใจเลือกมากกว่า 2 ทางเลือก รูปแบบคำสั่ง Select Case เงื่อนไข Case เงื่อนไขที่ 1 ชุดคำสั่งเมื่อตรวจสอบเงื่อนไขที่ 1 แล้วเป็นจริง Case เงื่อนไขที่ 2 ชุดคำสั่งเมื่อตรวจสอบเงื่อนไขที่ 2 แล้วเป็นจริง ... ... Case Else ชุดคำสั่งเมื่อตรวจสอบเงื่อนไขทั้งหมดแล้วเป็นเท็จ End Select

การใช้ Choose : ตัดสินใจ ฟังก์ชันสำเร็จรูปของ VB ที่ทำงานคล้ายกับ Select…Case รูปแบบคำสั่ง varName = Choose(Index,Choice1,Choice2,Choice3,..,Choice n) ต้องกำหนดค่าพารามิเตอร์ที่ชื่อ Index เป็นตัวเลขจำนวนเต็มตั้งแต่ 1 ขึ้นไปโดยจะคืนค่ากลับมาตามรายการพารามิเตอร์ที่มี

For…Next : การวนซ้ำด้วยจำนวนรอบที่แน่นอน เป็นคำสั่งที่ต้องการให้ทำงานวนซ้ำด้วยจำนวนรอบที่แน่นอน โดยจะมี ตัวแปรคอยนับรอบการวนซ้ำ ซึ่งทุกครั้งก่อนการวนซ้ำจะตรวจสอบค่าของตัวแปรนับรอบว่าได้วนซ้ำครบตามเงื่อนไขแล้วหรือไม่ ถ้ายังไม่ครบก็วนซ้ำต่อไป วนซ้ำครบจำนวน? ทำคำสั่งถัดไป ยังไม่ครบ ครบแล้ว ทำซ้ำคำสั่งใน For

รูปแบบคำสั่ง For…Next For ตัวแปรที่ใช้นับ = ค่าเริ่มต้นของตัวแปร To ค่าสุดท้ายของตัวแปร[Step การนับของตัวแปร] ชุดคำสั่งกรณีที่เงื่อนไขได้ผลเป็นจริง(True) Next ตัวแปรที่ใช้นับ

For…Next แบบซ้อนกัน การวนซ้ำแบบซ้อนกัน เช่นกรณีการเติมข้อมูลในตาราง ต้องเติมทีละแถวแต่ละแถวก็ต้องเติมทีละคอลัมน์ จนครบ แล้วขึ้นแถวใหม่ วนซ้ำครบจำนวน? ทำคำสั่งถัดไป ยังไม่ครบ ครบแล้ว ทำซ้ำคำสั่งใน For

ตัวอย่างการทำงานของ For 1) Dim i As Integer For i = 1 To 5 Beep() TextBox1.Text += "Beep: " & i & vbCrLf Next ผลรัน 2) Dim i, j As Integer Dim s As String = “ " TextBox1.Text = “ " For i = 10 To 1 Step -1 For j = 1 To i s &= "@ " Next s &= vbCrLf TextBox1.Text = s ผลรัน

While…End While : การวนซ้ำด้วยจำนวนรอบที่ไม่แน่นอน เป็นคำสั่งที่ทำงานเมื่อเงื่อนไขที่กำหนดเป็นจริง จะทำซ้ำไปเรื่อย ๆ จนกว่าเงื่อนไขที่กำหนดจะเป็นเท็จจึงหยุดการทำงาน วนซ้ำอีกหรือไม่? ทำคำสั่งถัดไป จริง(True) เท็จ(False) ทำซ้ำคำสั่งใน While

รูปแบบคำสั่ง While…End While ชุดคำสั่งเมื่อตรวจสอบเงื่อนไขแล้วได้ผลเป็นจริง(True) End While

ตัวอย่างการเขียน While Loop Dim ans As Integer = Int(Rnd() * 10) Dim count As Integer = 0 Dim hint As Integer While hint <> ans hint = Int(InputBox("ทายตัวเลขระหว่าง 0-9", "เกมทายตัวเลข")) count += 1 End While MessageBox.Show("คุณทายไปทั้งสิ้น " & count & "ครั้ง", "ตัวเลขที่สุ่มคือ " & ans) ผลรัน ผลรัน

การวนซ้ำด้วยการใช้ Do…Loop การวนซ้ำที่มีรูปแบบและการตรวจสอบเงื่อนไขที่แตกต่างกันแบ่งเป็น 4 รูปแบบ รูปแบบที่ 1: การใช้ Do While…Loop การทำงานและตรวจสอบเงื่อนไขเหมือนคำสั่ง While…End While แต่มีรูปแบบคำสั่งที่ต่างกัน ตรวจสอบเงื่อนไข ทำคำสั่งถัดไป จริง(True) เท็จ(False) ทำซ้ำคำสั่งใน While

รูปแบบคำสั่ง Do While…Loop ชุดคำสั่งเมื่อตรวจสอบเงื่อนไขแล้วได้ผลเป็นจริง(True) Loop

ตัวอย่างการเขียน Do..While Loop Dim ans As Integer = Int(Rnd() * 10) Dim count As Integer = 0 Dim hint As Integer Do While hint <> ans hint = Int(InputBox("ทายตัวเลขระหว่าง 0-9", "เกมทายตัวเลข")) count += 1 Loop MessageBox.Show("คุณทายไปทั้งสิ้น " & count & "ครั้ง", "ตัวเลขที่สุ่มคือ " & ans) ผลรัน ผลรัน

การวนซ้ำด้วยการใช้ Do Until…Loop การทำงานเหมือนคำสั่ง While วนซ้ำเมื่อเงื่อนไขเป็นเท็จ แต่จะหลุดการวนซ้ำเมื่อเงื่อนไขเป็นจริง ตรวจสอบเงื่อนไข ทำคำสั่งถัดไป เท็จ(False) จริง(True) ทำซ้ำคำสั่งใน Do Until รูปแบบคำสั่ง Do Until เงื่อนไข ชุดคำสั่งเมื่อตรวจสอบเงื่อนไขแล้วได้ผลเป็นจริง(True) Loop

ตัวอย่างการเขียน Until Loop Dim ans As Integer = Int(Rnd() * 10) Dim count As Integer = 0 Dim hint As Integer Do Until hint = ans hint = Int(InputBox("ทายตัวเลขระหว่าง 0-9", "เกมทายตัวเลข")) count += 1 Loop MessageBox.Show("คุณทายไปทั้งสิ้น " & count & "ครั้ง", "ตัวเลขที่สุ่มคือ " & ans) ผลรัน ผลรัน

การวนซ้ำด้วยการใช้ Do…Loop รูปแบบที่ 3: การใช้ Do…Loop While การทำงานอย่างน้อย 1 รอบก่อนแล้วจึงตรวจสอบเงื่อนไขการวนซ้ำ ซึ่งจะหลุดการวนซ้ำเมื่อเงื่อนไขเป็นเท็จ ตรวจสอบเงื่อนไขที่กำหนด ทำคำสั่งถัดไป จริง(True) เท็จ(False) ทำซ้ำคำสั่งใน Do..Loop While รูปแบบคำสั่ง Do ชุดคำสั่งเมื่อตรวจสอบเงื่อนไขแล้วได้ผลเป็นจริง(True) Loop While เงื่อนไข

ตัวอย่างการเขียน Do..Loop While Dim ans As Integer = Int(Rnd() * 10) Dim count As Integer = 0 Dim hint As Integer Do hint = Int(InputBox("ทายตัวเลขระหว่าง 0-9", "เกมทายตัวเลข")) count += 1 Loop While hint <> ans MessageBox.Show("คุณทายไปทั้งสิ้น " & count & "ครั้ง", "ตัวเลขที่สุ่มคือ " & ans) ผลรัน ผลรัน

การวนซ้ำด้วยการใช้ Do…Loop Until การทำงานอย่างน้อย 1 รอบก่อนแล้วจึงตรวจสอบเงื่อนไขการวนซ้ำ ซึ่งจะหลุดการวนซ้ำเมื่อเงื่อนไขเป็นจริง ตรวจสอบเงื่อนไขที่กำหนด ทำคำสั่งถัดไป เท็จ(False) จริง(True) ทำซ้ำคำสั่งใน Do..Loop Until รูปแบบคำสั่ง Do ชุดคำสั่งเมื่อตรวจสอบเงื่อนไขแล้วได้ผลเป็นเท็จ(False) Loop Until เงื่อนไข

ตัวอย่างการเขียน Do..Until Loop Dim ans As Integer = Int(Rnd() * 10) Dim count As Integer = 0 Dim hint As Integer Do hint = Int(InputBox("ทายตัวเลขระหว่าง 0-9", "เกมทายตัวเลข")) count += 1 Loop Until hint = ans MessageBox.Show("คุณทายไปทั้งสิ้น " & count & "ครั้ง", "ตัวเลขที่สุ่มคือ " & ans) ผลรัน ผลรัน

คำสั่ง Exit เป็นคำสั่งเพื่อกระโดดออกจากการทำงานโดยที่ไม่จำเป็นต้องทำคำสั่งที่เหลืออยู่หรือวนซ้ำไม่ครบตามจำนวนรอบ สามารถจบการทำงานได้ทันที รูปแบบคำสั่ง Exit ชื่อคำสั่ง

แบบฝึกหัด โค้ดต่อไปนี้แสดง MessageBox จำนวนกี่ครั้ง 1) For a =0 to 9 Msgbox (“Hello”) If a> 5 then Exit For End If Next 2) For a = 20 to 4 Step -2 Msgbox (“Hello”) Next 4) a= 10 Do While a <10 Msgbox (“Hello”) a += 1 Loop 3) a= 0 Do While a <10 Msgbox (“Hello”) a += 1 Loop 6) a= 10 Do Msgbox (“Hello”) a += 1 Loop While a <10 5) a= 0 Do Until a =10 a += 2 Loop Msgbox (a)

แบบฝึกหัด เขียนโปรแกรมป้อนรหัสผ่าน เหมือน ATM โดยมีเงื่อนไข ตอบได้ไม่เกิน 3 ครั้ง ถ้าตอบถูก ออกจากการวนแสดงข้อความ “รหัสถูกต้อง” จบการทำงาน ถ้ายกเลิกก่อน ให้ออกจากการวนและแสดงข้อความ “ดีแล้วที่ยกเลิก” จบการทำงาน ถ้าตอบผิด ให้บอกว่า ผิดกี่ครั้ง แล้วให้ตอบใหม่ ถ้าตอบผิดครบ 3 ครั้ง ให้แสดงข้อความว่า “เสียใจด้วยบัตรของท่านถูกยึด” จบการทำงาน

แบบฝึกหัด เขียนโปรแกรมแสดงแม่สูตรคูณ โดยการป้อนค่าแม่สูตรคูณ เขียนโปรแกรมแสดงแม่สูตรคูณ โดยการป้อนค่าแม่สูตรคูณ เขียนโปรแกรมบวกเลขโดยเริ่มตั้งแต่ 1-10 ด้วยคำสั่ง while และ until Loop เขียนโปรแกรมป้อนตัวเลข แล้วแสดงผลว่าเป็นเลขคี่ หรือเลขคู่ทาง MessageBox หากป้อนคำว่า “Stop” ก็ให้หยุดการวนรับค่าออกจากการทำงานของลูป

แบบฝึกหัด สสาร จุดเยือกแข็ง จุดเดือด น้ำ 100 เอทานอล -114 78 ปรอท -39 100 เอทานอล -114 78 ปรอท -39 357 ออกซิเจน -219 -183