Chapter 05 Selection structure ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ www.ict.up.ac.th/yeunyo ng.

Slides:



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

ความรู้พื้นฐานเกี่ยวกับการเขียนโปรแกรม
Chapter 8 : Logic Modeling & Data Modeling
การจำลองความคิด รายวิชา ง40102 หลักการแก้ปัญหาและการโปรแกรม
การทำงานแบบเลือกทำ (Selection)
ลักษณะโครงสร้างของผังงาน
LAB 1 ให้นักศึกษาเขียน Flowchart โดยใช้โปรแกรม Microsoft Word วาดรูป Flowchart ส่ง Flowchart ที่วาดเสร็จแล้วในชั่วโมง และ print ใส่กระดาษ ส่งในครั้งหน้า.
การเขียนโปรแกรม แบบมีโครงสร้าง (ต่อ)
Control Statement if..else switch..case for while do-while.
บทที่ ๖ หลักการแก้ปัญหาด้วยคอมพิวเตอร์
โครงสร้างควบคุมและคำสั่งแบบเงื่อนไข
ตัวอย่าง Flowchart.
การแก้ปัญหาด้วยคอมพิวเตอร์
ผังงานโปรแกรม (Program Flowchart)
บทที่ 4 การตัดสินใจในการเขียนโปรแกรม
หน่วยที่ 1 ระบบคอมพิวเตอร์
เนื้อหา ประเภทของโปรแกรมภาษา ขั้นตอนการพัฒนาโปรแกรม
วิชา การออกแบบและพัฒนาซอฟต์แวร์
โครงสร้างคำสั่งแบบเลือก (Selection)
คำสั่งเงื่อนไขและการควบคุม
โครงสร้างควบคุม 1. โครงสร้างควบคุมแบบวนทางเลือก
การจำลองความคิด
Surachai Wachirahatthapong
การออกแบบโปรแกรมอย่างมีโครงสร้าง Structured Design
คำสั่งแบบมีเงื่อนไข IF Statement
การเขียนผังงานแบบโครงสร้าง
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
คำสั่งควบคุมเงื่อนไข และการทำงานเป็นรอบ
ครูรัตติยา บุญเกิด.
ง30212 การเขียนโปรแกรมภาษาคอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
โครงสร้างแบบลำดับ คำสั่ง x คำสั่ง y.
การเขียนผังงาน จุดประสงค์ 1.อธิบายความของผังงานได้
Week 3 Flow Control in PHP
บทที่ 10 คำสั่งควบคุม OUTLINE 1. คำสั่งแบบเรียงลำดับ (Sequence)
คำสั่งควบคุมขั้นตอน Flow control statements
วิทยา กรระสี (วท.บ. วิทยาการคอมพิวเตอร์)
การออกแบบโครงสร้าง (Structured Design)
การเขียนโปรแกรมเบื้องต้น
หลักการเขียนโปรแกรม ( )
หลักการเขียนโปรแกรม ( )
CHAPTER 4 Control Statements
การเขียนโปรแกรมเบื้องต้น
การตรวจสอบเงื่อนไขใน PHP
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
PHP การตรวจสอบเงื่อนไข.
อัลกอริทึ่มทำงานวนซ้ำ
Chapter 6 Repetition Structure[1] ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ ng.
Chapter 01 Problem-Solving Concept แนวคิดการแก้ปัญหา
Chapter 6 Repetition Structure[2] ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ ng.
Chapter 04 Flowchart ผู้สอน อ.ยืนยง กันทะเนตร
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
การแก้ปัญหาโปรแกรม (Flowchart)
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
หลักการเขียนโปรแกรม ( )
การเขียน แบบวนซ้ำ , วนลูป
หลักการเขียนโปรแกรมเบื้องต้น
หน่วยการเรียนรู้ที่ 3 การเขียน Flow Chart.
บทที่ 6 คำสั่งเงื่อนไข.
Chapter 7 Mix problem ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ ng.
ครูชลภิรัตน์ แก้วมูล MAIL.COM O.COM facebook : krumoo ck O.COM ครูชลภิรัตน์ แก้วมูล MAIL.COM O.COM.
Flowchart การเขียนผังงาน.
การรับและแสดงผลข้อมูล (Input/Output)
ตรรกะพื้นฐานและการแก้ปัญหา Basic logic and Problem Solving 3(2-2-5)
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
Computer Programming การเขียนโปรแกรม คอมพิวเตอร์ สัปดาห์ที่ 6 คำสั่งควบคุมการทำงานแบบ เงื่อนไขและคำสั่งควบคุมการ ทำงานแบบวนซ้ำ.
Computer Program คือ ขั้นตอนการทำงาน ของคอมพิวเตอร์
ผังงานโปรแกรม (Program Flowchart)
บทที่ 7 การเขียนผังงานระบบ.
ขั้นตอนการเขียนโปรแกรมคอมพิวเตอร์
ใบสำเนางานนำเสนอ:

Chapter 05 Selection structure ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ ng

Overview Flowchart [ ทบทวน ] Selection Structure – Basic Selection Structure – nested Selection Structure - case 2

Objective เพื่อให้นิสิตรู้จักโครงสร้างของ Flowchart แบบ selection structure เพื่อให้นิสิตเข้าใจการนำ selection structure ไปใช้งานในรูปแบบต่างๆ เพื่อให้นิสิตสามารถใช้ Selection structure ในการอธิบายกระบวนการแก้ปัญหาได้ 3

Flowchart [ ทบทวน ] ผังงานโดยทั่วไปจะประกอบด้วย โครงสร้างพื้นฐาน 3 รูปแบบต่อไปนี้คือ  โครงสร้างแบบลำดับ (Sequence Structure)  โครงสร้างแบบทางเลือก (Selection Structure)  โครงสร้างแบบทำซ้ำ (Repetition Structure) 4

“ รูปแบบที่ง่ายที่สุดของ โครงสร้างแบบนี้คือ การ เลือกแบบมีทางออก 2 ทาง ” 5 Selection Structure start read hour, hourRate hour > 160 pay = hour * hourRate write pay pay = (160 * hourRate) + ((hour- 160)*1.5*hourR ate) stop yes no

Selection Structure - Basic ลักษณะการทำงานแบบ if-then-else if then else เช่น ถ้า a > b ให้ พิมพ์ค่าในตัว แปร a กรณีอื่นๆ พิมพ์ค่าในตัวแปร b 6

Outp ut Proc ess Inpu t 7 start read a,b a > b stop yes no Selection Structure - Basic [cont.] write bwrite a โปรแกรมรับค่าตัวเลข 2 ค่าจากคีย์บอร์ด แล้วพิมพ์ตัวเลข ที่มีค่ามากกว่าออกทาง จอภาพ

Selection Structure - Basic [cont.] เป็นนิพจน์ที่ให้ผลลัพธ์เป็น ตรรกศาสตร์ มีการดำเนินการเปรียบเทียบ, การ ดำเนินการทางตรรกะ หรืออาจเป็นตัวแปร แบบตรรกะก็ได้ ภายใต้เงื่อนไข True หรือ False อาจมีการ ทำงานบางอย่าง หรือไม่มีก็ได้ แต่อย่างน้อยต้องมีการทำงานใดงานหนึ่ง เสมอ งานที่ทำอาจมี 1 หรือ หลายคำสั่งก็ได้ 8

9 Selection Structure - Basic [cont.] หาผลรวมของตัวเลข 2 ตัวที่รับจากผู้ใช้ ถ้า ผลรวมมีค่าน้อยกว่าหรือเท่ากับ 10 ให้ แสดงผลรวมนั้น Input : ตัวเลข 2 ตัว แทนค่าด้วย A และ B Process : SUM = A + B ถ้า SUM <= 10 ให้แสดง SUM แล้ว จบการทำงาน ถ้า SUM > 10 ให้จบการทำงาน Output : ผลรวมที่มีค่าน้อยกว่าหรือเท่ากับ 10

Outp ut Proc ess Inp ut start Read A, B write SUM stop SUM <= 10 nono y es SUM = A+B 10 Selection Structure - Basic [cont.]

จงเขียนโฟลชาร์ตในการคำนวณอายุของ ผู้ใช้ โดยผู้ใช้ต้องแจ้งปีเกิดในรูป คศ. ( เช็คได้ จากถ้ากรอกตัวเลขเกิน 2011 แสดงว่าใส่ ข้อมูลผิด ) ถ้าผู้ใช้แจ้งข้อมูลถูก โปรแกรมจะคำนวณ อายุผู้ใช้และแสดงผลลัพธ์ออกมา แต่ถ้าแจ้งข้อมูลผิด โปรแกรมจะบอกว่า Invalid data และจบการทำงาน 11

Selection Structure - Basic [cont.] โรงภาพยนตร์ไมเนอร์มีการเก็บค่าเข้าชม ภาพยนตร์ดังนี้ อายุน้อยกว่า 13 ปี คนละ 50 บาท อายุ 13 – 59 ปีคนละ 90 บาท อายุ 60 ปี ขึ้นไปคนละ 70 บาท จงเขียนโฟลชาร์ตเพื่อแสดงข้อความบอก ผู้ใช้ว่า คนๆ นั้นต้องเสียค่าเข้าชมภาพยนตร์ ในอัตราเท่าไร 12

Selection Structure - nested จากตัวอย่างก่อนหน้าเป็นลักษณะปัญหาที่มี ทางเลือกให้ทำมากกว่า 2 ทางเลือก ซึ่ง สามารถเขียนแบบง่ายได้โดยการ วิเคราะห์เงื่อนไข ของแต่ละ ทางเลือก เขียน if-then-else ของทางเลือกที่ 1 ( ทำงานเฉพาะเงื่อนไขเป็นจริง ) เขียน if-then-else ของทางเลือกที่ 2 ต่อ จากขั้นตอนก่อนหน้า ( ทำงานเฉพาะเงื่อนไข เป็นจริง ) ทำซ้ำจนครบทุกทางเลือกที่เหลือ 13

Selection Structure – nested [cont.] ปัญหา ??? ยิ่งมีหลายทางเลือก ยิ่งยาว, ซับซ้อน การกำหนด อาจไม่ ครอบคลุมในทุกกรณีที่เป็นไปได้ ทางแก้ – เขียนเป็นโครงสร้างแบบ nested if มี if-then-else ซ้อนอยู่ในการทำงาน ภายใต้เงื่อนไขที่เป็นจริง / เท็จของ if-then- else อื่น 14

15 start read age age < 13 stop no (13 ปี ขึ้นไป ) yes write “50 ฿ ” write “70 ฿ ” age < 59 write “90 ฿ ” no (60 ปี ขึ้นไป ) yes Selection Structure – nested [cont.] เช่น จากตัวอย่างก่อนหน้า

Selection Structure – nested [cont.] ถ้ามีทางเลือก n ทาง ต้องมีโครงสร้างซ้อนกัน n-1 ชั้น โครงสร้างที่ซ้อนกัน สามารถซ้อนอยู่ภายใต้ เงื่อนไขจริง / เท็จก็ได้ แต่ส่วนมากมักซ้อนอยู่ ภายใต้เงื่อนไขที่เป็นเท็จ if then else if then else 16

Selection Structure – nested [cont.] เขียนโฟลชาร์ตเพื่อแสดงเกรดของนิสิตจาก คะแนนที่ได้ กำหนดให้ 80 คะแนนขึ้นไป ได้เกรด A 70 – 79 คะแนนได้เกรด B 60 – 69 คะแนนได้เกรด C 50 – 59 คะแนนได้เกรด D 49 คะแนนลงไปได้เกรด F 17

Selection Structure – nested [cont.] เขียนโฟลชาร์ตเพื่อพิมพ์ตัวเลขที่มีค่าน้อย ที่สุดจากตัวเลขจำนวน 3 ตัวที่ได้รับจากผู้ใช้ ( สมมุติให้ตัวเลขทั้ง 3 ตัวที่ผู้ใช้กรอกมีค่าไม่ เท่ากัน ) จากตัวอย่างข้างบน ให้ปรับแก้ไขโฟลชาร์ต เพื่อพิมพ์ตัวเลขทั้ง 3 เรียงกันตามลำดับจาก น้อยไปหามาก 18

Selection Structure – nested [cont.] โรงแรมแห่งหนึ่ง กำหนดอัตราค่าเข้าพักต่อ คืน ดังนี้ พัก 1 คน คิดคืนละ 1000 บาท พัก 2 คน คิดคืนละ 1200 บาท พัก 3 คน คิดคืนละ 1500 บาท พักเกิน 3 คน คนที่เกินคิดเพิ่มคนละ 500 บาท / คืน จงเขียนโฟลชาร์ตเพื่อคำนวณเงินทั้งหมดที่ ลูกค้าต้องจ่ายเมื่อมาเข้าพักที่โรงแรมนี้ 19

Selection Structure - case เป็นลักษณะโครงสร้างทางเลือกอีกรูปแบบ มักใช้แทน nested if ในเงื่อนไขรูปแบบ เฉพาะบางอย่าง จะมีการทำงานที่ต่างกันเมื่อค่าในตัวแปร / ผลลัพธ์ของนิพจน์ มีค่า “ เท่ากับ ” ค่าใดค่า หนึ่ง เช่น โปรแกรมมีเมนูให้ผู้ใช้เลือก 5 รูปแบบ -> เงื่อนไขที่ทำงาน choose == ? (1 ใน 5 รูปแบบนั้น ) สามารถใช้ nested if แทนได้ 20

Selection Structure – case [cont.] 21

Reference Maureen Sprankle - Problem Solving and Programming Concepts (9th Edition), Prentice Hall. thttp://en.wikipedia.org/wiki/Flowchar t tro to Com 1_2554/Lecture/Lesson3_Flowchart.ra rhttp://dl.dropbox.com/u/ /In tro to Com 1_2554/Lecture/Lesson3_Flowchart.ra r 22