ผังงานโปรแกรม (Program Flowchart)

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
โครงสร้างโปรแกรมภาษา C
Advertisements

ความรู้พื้นฐานเกี่ยวกับการเขียนโปรแกรม
การจำลองความคิด รายวิชา ง40102 หลักการแก้ปัญหาและการโปรแกรม
LAB 1 ให้นักศึกษาเขียน Flowchart โดยใช้โปรแกรม Microsoft Word วาดรูป Flowchart ส่ง Flowchart ที่วาดเสร็จแล้วในชั่วโมง และ print ใส่กระดาษ ส่งในครั้งหน้า.
การเขียนโปรแกรม แบบมีโครงสร้าง (ต่อ)
Control Statement if..else switch..case for while do-while.
Control Statement for while do-while.
บทที่ ๖ หลักการแก้ปัญหาด้วยคอมพิวเตอร์
การเขียนผังงาน.
บทที่ 3 ตอนที่ 1 คำสั่งเงื่อนไขและการตัดสินใจ(p
Lecture no. 5 Control Statements
Program Flow Chart.
LAB # 3 Computer Programming 1
การแก้ปัญหาด้วยคอมพิวเตอร์
คำสั่ง while ควบคุมการทำงานวนซ้ำ กรณีระบบงานมีลักษณะตรวจสอบเงื่อนไขก่อน แล้วเข้าสู่ส่วนลำดับงานคำสั่งที่กำหนดไว้ การเขียนคำสั่ง while ต้องกำหนดนิพจน์แบบตรรกะเป็นเงื่อนไขมีค่าในหน่วยความจำเป็น.
คำสั่งแบบเลือกทำ Week 6.
แผนผัง FlowChart Flow Chart คือ ขั้นตอนที่นำผลที่ได้จากการกำหนดและการ วิเคราะห์ปัญหามาเขียนเป็นแผนภาพหรือสัญลักษณ์ ประโยชน์ของผังงาน -ช่วยลำดับขั้นตอนการทำงานของโปรแกรม.
เนื้อหา ประเภทของโปรแกรมภาษา ขั้นตอนการพัฒนาโปรแกรม
วิชา การออกแบบและพัฒนาซอฟต์แวร์
Repetitive Statements (Looping)
อ.อรวรรณ เชาวลิต For คำสั่งวนซ้ำ อ.อรวรรณ เชาวลิต
คำสั่ง Repeat...Until คำสั่งควบคุมให้ทำงานซ้ำ
ตัวอย่างคำสั่ง FOR.
คำสั่งควบคุม (Control Statement)
การเขียนโปรแกรมแบบมีทางเลือก
Flowchart รูปแบบ If ซ้อน If ก็คือ การเอา If ไปไว้ใน If ทางฝั่ง True  โดยโครงสร้าง If ซ้อน If นั้นเอาไว้ใช้กับ กรณีตรวจสอบเงื่อนไขที่มากกว่า 2 กรณี เพราะเนื่องจาก.
คำสั่งควบคุมการทำงาน
การเขียนโปรแกรมภาษาซี
ตัวอย่างการวิเคราะห์งาน และ การเขียนผังงานและซูโดโค้ด
โครงสร้างควบคุมการทำงาน
ง30212 การเขียนโปรแกรมภาษาคอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
การเขียนผังงาน.
การเขียนผังงาน จุดประสงค์ 1.อธิบายความของผังงานได้
คำสั่งควบคุมการทำงานของ ActionScripts
Flow Chart INT1103 Computer Programming
รูปแบบการเขียนผังงานแบบ 2 ทางเลือก
การเขียนผังงานแบบทำซ้ำ
การเขียนผังงานแบบทางเลือก
การเขียนผังงาน ผังงานคือ อะไร ?.
การออกแบบโปรแกรม ขั้นตอนการแก้ปัญหา การนิยามปัญหา (Problem definition)
การแก้ปัญหาด้วยคอมพิวเตอร์
โจทย์วิเคราะห์ปัญหาที่ 1
Week 6 การทำซ้ำโดย for loop
Week 5 การทำซ้ำโดย while loop และ do while loop
Week 7 การเขียนโปรแกรมเบื้องต้น
Week 6 การทำซ้ำโดย for loop
Chapter 5 การทำซ้ำโดย while loop และ do while loop
Week 5 การทำซ้ำโดย while loop และ do while loop
การออกแบบโครงสร้าง (Structured Design)
การเขียนโปรแกรมเบื้องต้น
วิชา COSC2202 โครงสร้างข้อมูล (Data Structure)
หลักการเขียนโปรแกรม ( )
CHAPTER 4 Control Statements
การเขียนโปรแกรมเบื้องต้น
การเขียนผังงาน (Flowchart)
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
ตัวแปร Array แบบ 1 มิติ การเขียนโปรแกรมแบบวนซ้ำ
การแก้ปัญหาโปรแกรม (Flowchart)
การเขียน แบบวนซ้ำ , วนลูป
หน่วยการเรียนรู้ที่ 3 การเขียน Flow Chart.
การเขียนโปรแกรม (ภาษาซี)
การเขียนผังงาน ผังงาน (Flowchart)
ผังงาน (Flow chart).
Flowchart การเขียนผังงาน.
การเขียนผังงาน (Flowchart)
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
Computer Programming การเขียนโปรแกรม คอมพิวเตอร์ สัปดาห์ที่ 6 คำสั่งควบคุมการทำงานแบบ เงื่อนไขและคำสั่งควบคุมการ ทำงานแบบวนซ้ำ.
Week 5 While and Do-While loop (Control Structure 2)
Computer Program คือ ขั้นตอนการทำงาน ของคอมพิวเตอร์
ผังงานโปรแกรม (Program Flowchart)
ใบสำเนางานนำเสนอ:

ผังงานโปรแกรม (Program Flowchart) บทที่ 1 ผังงานโปรแกรม (Program Flowchart)

ผังงานโปรแกรม (Program Flowchart) ขั้นตอนการพัฒนาโปรแกรม การวิเคราะห์ปัญหา การเขียนผังงาน ผังงานแบบลำดับ ผังงานแบบเงื่อนไข ผังงานแบบวนซ้ำ

การพัฒนาโปรแกรม 5 ขั้นตอน 1.1 ขั้นตอนพัฒนาโปรแกรม Problem กำหนดปัญหา การพัฒนาโปรแกรม 5 ขั้นตอน 1. กำหนดปัญหา 2. วิเคราะห์ปัญหา 3. เขียนผังงาน 4. เขียนโปรแกรม 5. ทดสอบโปรแกรม Analysis วิเคราะห์ปัญหา Flowchart เขียนผังงาน Input ข้อมูล Program เขียนโปรแกรม Output ผลลัพธ์ ปัญหาคืออะไร? คำตอบ ที่ต้องการคืออะไร Testing ทดสอบโปรแกรม

1.2 วิเคราะห์ปัญหา วิเคราะห์ปัญหา (Problem Analysis): 3 ขั้นตอน การรับข้อมูล (Input Data) การคำนวณ (Process) การแสดงผลลัพธ์ (Output Result) ข้อมูล input และ Output ในโปรแกรมจะต้องเก็บใน Memory ผ่านตัวแปร (Variables) เช่น X, Y, …

ตัวอย่าง 1.1 การวิเคราะห์ปัญหาการคำนวณผลบวก ที่คล้ายการ ทำงานของเครื่องคิดเลขอย่างง่าย ตัวแปร X, Y สำหรับเก็บค่าของเลข 2 ค่า ตัวแปร Sum สำหรับเก็บผลลัพธ์ การวิเคราะห์ปัญหา 1. Input: รับค่า X, Y 2. Process: คำนวณ Sum = X + Y 3. Output: พิมพ์ค่า Sum … Memory X Y Sum

ตัวอย่าง 1.2 การวิเคราะห์ปัญหา การคำนวณค่าเฉลี่ยของเลข 3 ค่า และแสดงค่าเฉลี่ย ทางจอภาพ ตัวแปร X1, X2, X3 สำหรับเก็บค่าของเลข 3 ค่า ตัวแปร Sum สำหรับเก็บผลบวก ตัวแปร Mean สำหรับเก็บค่าเฉลี่ย การวิเคราะห์ปัญหา 1. Input: รับค่า X1, X2, X3 2. Process: Sum = X1 + X2 + X3 Mean = Sum/3 3. Output: พิมพ์ค่า Mean … Memory X1 X2 X3 Sum Mean

ตัวอย่าง 1.3 การวิเคราะห์ปัญหา การคำนวณค่าเฉลี่ยของเลข N ค่า เมื่อ ค่าเฉลี่ย = åiN Xi / N) ตัวแปร N สำหรับเก็บจำนวนค่า ตัวแปร X สำหรับเก็บค่าของเลข N ค่า (เป็นข้อมูลเข้าในแต่ละรอบ) ตัวแปร Sum สำหรับเก็บผลบวก (แบบสะสมในแต่ละรอบ) ตัวแปร Mean สำหรับเก็บค่าเฉลี่ย การวิเคราะห์ปัญหา 1. Input: รับค่า N (1 ค่า) และค่า X (N ค่า) โดยรับรอบละค่า 2. Process: ในแต่ละรอบ (i=1, 2, … , N) รับค่า X คำนวณ Sum = Sum + X จบการทำงานซ้ำ (เมื่อทำซ้ำครบ N รอบ) คำนวณ Mean = Sum/N 3. Output: พิมพ์ค่า Mean … Memory N X Sum Mean

1.3 การเขียนผังงาน สัญลักษณ์พื้นฐาน ทีใช้ในผังงาน ผังงาน (Flowchart) เป็นแผนภาพ ที่ใช้อธิบายขั้นตอนและลำดับการทำงานของโปรแกรมตั้งแต่เริ่มจนจบ สัญลักษณ์พื้นฐาน ทีใช้ในผังงาน แสดงจุดเริ่มต้น หรือจุดจบของผังงาน แสดงทิศทางของการดำเนินงาน แสดงการคำนวณ  แสดงการรับข้อมูล หรือแสดงผล (ไม่ระบุชนิดอุปกรณ์) การแสดงผลทางจอภาพ การแสดงผลทางเครื่องพิมพ์ แสดงการทดสอบเงื่อนไข (เมื่อมีทางเลือก) แสดงจุดเชื่อมต่อในผังงาน

รูปแบบของผังงาน ผังงานแบบลำดับ ผังงานแบบเงื่อนไข ผังงานแบบวนซ้ำ

1.3.1 ผังงานแบบลำดับ Flowchart แบบลำดับ (Sequence) start แสดงขั้นตอนการทำงานที่ทำงานตามลำดับ (จากบนลงล่าง) ไม่มีการข้ามขั้น หรือย้อนกลับ) Input Process Output end

ตัวอย่าง 1.4 แสดง Flowchart ของการหาผลบวก (Sum) ของ ข้อมูล 2 ค่า (X, Y) พร้อมแสดงผลบวก start Input X,Y … Memory X Y Sum 50 100 Sum = X+Y 150 Print Sum end

จะทำงาน (Statement) เมื่อเงื่อนไขเป็นจริงเท่านั้น 1.3.2 ผังงานแบบเงื่อนไข แสดงการทำงานตามเงื่อนไข ที่จะต้องเลือกทำอย่างใดอย่างหนึ่ง ซึ่งมี 3 กรณี คือ เลือกจาก 1, 2, หรือ n 1. เงื่อนไขทางเลือกจาก 1 เส้นทาง check condition จะทำงาน (Statement) เมื่อเงื่อนไขเป็นจริงเท่านั้น yes Statement(s) no

ตัวอย่าง 1.5 แสดง Flowchart เพื่อตรวจสอบเงื่อนไข เพื่อคัดเลือกที่สอบผ่าน (คะแนน X ³ 60 ) และแสดงผลเฉพาะผู้ที่สอบผ่าน … Memory X start Input ID,X X >= 60 yes Print ID,X no end

ผังงาน-เงื่อนไข 2. เงื่อนไขทางเลือกจาก 2 เส้นทาง check condition yes statement 1 no statement 2 เมื่อเงื่อนไขเป็นจริงจะทำ (Statement 1) เมื่อเงื่อนไขเป็นเท็จจะทำ (Statement 2)

ตัวอย่าง 1.6 แสดง Flowchart เพื่อแบ่งนักศึกษาเป็น 2 กลุ่ม ตามเพศ คือ ชาย (Male) หรือหญิง (Female) start Input ID, Name,Gender Gender=‘M’ yes Print “Male” Print “Female” no end

ผังงาน-เงื่อนไข 3. เงื่อนไขทางเลือกจาก n เส้นทาง cond1 yes statement1 no 3. เงื่อนไขทางเลือกจาก n เส้นทาง cond2 statement2 yes no เมื่อเงื่อนไข 1 เป็นจริงจะทำคำสั่ง 1 (statement1) ถ้าไม่แต่เงื่อนไข 2 เป็นจริงจะทำคำสั่ง 2 (statement2) cond3 statement3 yes no . . . condn-1 statement n-1 yes no ถ้าไม่แต่เงื่อนไข n-1 เป็นจริงจะทำคำสั่ง n-1 (statement n-1) statement n ถ้าไม่จะทำคำสั่งสุดท้าย คือ n (statement n)

ตัวอย่าง 1.7 เงื่อนไข >>> start Input ID Name,X แสดง Flowchart เพื่อตัดเกรดตาม คะแนน พร้อมแสดงผลทางลัพธ์ X ³ 80 yes Grade = ‘A’ no … Memory X ³ 70 yes Grade = ‘B’ no เงื่อนไข >>> คะแนน 80-100 เกรด A คะแนน 70-79 เกรด B คะแนน 60-69 เกรด C คะแนน 50-59 เกรด D คะแนน < 50 เกรด F ID Name . . . X ³ 60 yes Grade = ‘C’ no X ³ 50 yes Grade = ‘D’ no X Grade Grade = ‘F’ Print Grade end

1.3.3 ผังงานแบบวนซ้ำ การทำซ้ำ (Looping) แบ่งเป็น 3 กรณี 1.3.3 ผังงานแบบวนซ้ำ การทำซ้ำ (Looping) แบ่งเป็น 3 กรณี while, do-while, for 1. การทำซ้ำที่มีเงื่อนไขแบบ while statement(s) check condition yes ตรวจสอบเงื่อนไขก่อน จะทำงาน (Statement) ซ้ำเมื่อเงื่อนไขเป็นจริง no exit loop (ออกจากทำซ้ำเมื่อเงื่อนไขเป็นเท็จ)

ตัวแปร ในการทำซ้ำ กำหนดค่า I = 1, 2, 3, ..., 99, 100 100 start 3 คำสั่งในการทำซ้ำ I = 1 ค่าเริ่มต้น I=1 yes while I<=100 no end ค่าสุดท้าย I=100 Print I ค่าเพิ่ม I=I+1 I = I+1

ตัวอย่าง 1.8 แสดง Flowchart เพื่อคำนวณ ผลบวกของเลขนับ 1+2+...+100 (ด้วยคำสั่ง while) กำหนดค่า I = 1, 2, 3, ..., 100 … Memory I SUM คำนวณ SUM = 1+2+3+...+100 start 3 คำสั่งในการทำซ้ำ I = 1 ค่าเริ่มต้น I=1 SUM = 0 ค่าสุดท้าย I=100 yes while I<100 ค่าเพิ่ม I=I+1 no Print SUM ค่า SUM เริ่มต้น SUM=0 ค่า SUM เพิ่ม SUM = SUM+I SUM+I end I = I+1

ผังงาน-ทำซ้ำ ทำงาน (Statement) ก่อน จึงทำการตรวจเงื่อนไข 2. การทำซ้ำที่มีเงื่อนไขแบบ do-while statement(s) check condition yes ทำงาน (Statement) ก่อน จึงทำการตรวจเงื่อนไข และทำซ้ำถ้าเงื่อนไขเป็นจริง exit loop no (จนกระทั่งเงื่อนไขเป็นเท็จจึงออกจากทำงานซ้ำ)

ตัวอย่าง 1.9 แสดง Flowchart เพื่อคำนวณ ผลบวกของเลขนับ 1+2+...+100 (ด้วยคำสั่ง do-while) กำหนดค่า I = 1, 2, 3, ..., 100 … Memory I SUM คำนวณ SUM = 1+2+3+...+100 start 3 คำสั่งในการทำซ้ำ I = 1 ค่าเริ่มต้น I=1 SUM = 0 ค่าสุดท้าย I=100 yes SUM = SUM+I ค่าเพิ่ม I=I+1 I = I+1 ค่า SUM เริ่มต้น SUM=0 while I<100 ค่า SUM เพิ่ม SUM+I no Print SUM 22 end

ผังงาน-ทำซ้ำ (แต่ละรอบปกติจะเพิ่มทีละ 1 ค่า (i = i+1)) 3. การทำซ้ำตามจำนวนที่ระบุ ทำงานตามรอบที่กำหนด statement(s) i £ N for i=1 to N โดยเริ่มจากรอบเริ่มต้น (i=1) ไปยังรอบสุดท้าย (i=N) i > N exit loop (แต่ละรอบปกติจะเพิ่มทีละ 1 ค่า (i = i+1)) (ออกจากทำงานซ้ำเมื่อ i > N)

ตัวอย่าง 1.10 แสดง Flowchart เพื่อคำนวณ ผลบวก ของเลขนับ 1+2+...+100 (ด้วยคำสั่ง for) กำหนดให้ I = 1, 2, 3, ..., 100 … Memory I SUM คำนวณ SUM = 1+2+3+...+100 start 3 ค่าในการทำซ้ำ SUM = 0 ค่าเริ่มต้น I=1 yes for I=1 to 100 ค่าสุดท้าย I=100 no Print SUM ค่าเพิ่ม I=I+1 กำหนดใน for เดียว SUM = SUM+I end

ตัวอย่าง 1.11 แสดง Flowchart เพื่อคำนวณ ผลคูณ 1x2x...x10 กำหนดให้ I = 1, 2, 3, ..., 10 คำนวณ MUL = 1x2x3x...x10 … Memory I MUL ค่าเริ่มต้น ค่าสุดท้าย ค่าเพิ่ม I=1 I=10 I=I+1 3 ค่าในการทำซ้ำ กำหนดใน for เดียว start MUL = 1 yes for I=1 to 10 no Print MUL MUL = MUL x I end

ตัวอย่าง 1.12 แสดง Flowchart เพื่อคำนวณ สูตรคูณแม่ T (เช่น T=2) กำหนด i=1, 2, …, 12, และ R = T x i start T x i = R 2 x 1 = 2 2 x 2 = 4 2 x 3 = 6 2 x 4 = 8 2 x 5 = 10 2 x 6 = 12 2 x 7 = 14 2 x 8 = 16 2 x 9 = 18 2 x10 = 20 2 x11 = 22 2 x12 = 24 Input T … Memory T i R for i=1 to 12 i > 12 end R = T x i i <=12 Print T, i, R

ตัวอย่าง 1.13 แสดง Flowchart เพื่อคำนวณค่าเฉลี่ยของข้อมูล N ค่า ข้อมูลแต่ละค่าเก็บใน X รอบละค่า (X1, X2, ..., XN) เมื่อ ค่าเฉลี่ย (åiN Xi/N) start Sum = 0 … Memory X Sum Mean N Sum Input N = 0 N = _ 5 x1 = _ 60 60 for i=1 to N Mean = Sum/N i > N x2 = _ 50 110 x3 = _ 25 135 Input X i £ N x4 = _ 30 165 Print Mean x5 = _ 80 Sum=Sum+X 245 Mean = 245/5 =49 end