1 / 60

การเขียนผังงานเบื้องต้น

การเขียนผังงานเบื้องต้น. Basic Flowcharting. การเขียนผังงาน (Flowcharting). ผังงาน หมายถึง เครื่องมือที่ช่วยในการเขียนโปรแกรม โดยเขียนเป็นเครื่องหมายภาพสัญลักษณ์แสดงลำดับขั้นตอนการทำงาน การเขียนผังงาน เป็นการถ่ายทอดความเข้าใจที่ได้จากการวิเคราะห์งานให้อยู่ในรูปภาพหรือสัญลักษณ์

jarvis
Download Presentation

การเขียนผังงานเบื้องต้น

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. การเขียนผังงานเบื้องต้นการเขียนผังงานเบื้องต้น Basic Flowcharting

  2. การเขียนผังงาน(Flowcharting) • ผังงาน หมายถึง เครื่องมือที่ช่วยในการเขียนโปรแกรม โดยเขียนเป็นเครื่องหมายภาพสัญลักษณ์แสดงลำดับขั้นตอนการทำงาน • การเขียนผังงาน เป็นการถ่ายทอดความเข้าใจที่ได้จากการวิเคราะห์งานให้อยู่ในรูปภาพหรือสัญลักษณ์ • ผู้เขียนโปรแกรมจะสามารถเข้าใจลำดับขั้นตอนการเขียนโปรแกรมได้อย่างรวดเร็วและง่ายขึ้น และง่ายต่อการตรวจสอบความถูกต้องของลำดับขั้นตอนในวิธีการประมวลผล

  3. การเขียนผังงาน(Flowcharting) • งานทุกชนิดที่มีการวิเคราะห์เป็นลำดับขั้นตอนแล้ว เราสามารถนำมาเขียนผังงานได้ แม้กระทั่งงานที่เกี่ยวข้องกับชีวิตประจำวันของเราเอง

  4. เริ่มต้น โยนเหรียญ ก้อย หัว ผลการโยน เสียเงิน 10 บาท ได้เงิน 10 บาท ยัง ครบ 3 ครั้ง หรือยัง? ครบ หยุด ตัวอย่างผังงานทั่วไป(1/3) • แสดงการโยนเหรียญ 3 ครั้ง ถ้าออกหัว ผู้โยนจะได้เงิน 10 บาท ถ้าออกก้อย ผู้โยนจะเสียเงิน 10 บาท

  5. เริ่มต้น รอสัญญาณไฟ ไม่ใช่ ไฟแดง หรือไม่ ใช่ เดินข้ามถนน หยุด ตัวอย่างผังงานทั่วไป(2/3) • ผังงานแสดงการเดินข้ามถนนที่มีสัญญาณไฟจราจร

  6. เริ่มต้น อายุต่ำกว่า 5 ปี ใช่ ห้ามรับประทาน ไม่ใช่ อายุ 5 ปีขั้นไป แต่ไม่ถึง 8 ปี ใช่ ครั้งละ 1 เม็ด ไม่ใช่ อายุ 8 ปีขั้นไป แต่ไม่ถึง 15 ปี ใช่ ครั้งละ 2 เม็ด ไม่ใช่ ครั้งละ 3 เม็ด หยุด ตัวอย่างผังงานทั่วไป(3/3) • ผังงานพิจารณาการใช้ยาตามฉลากยาที่ปิดข้างขวด แยกตามขนาดการใช้ดังนี้ • อายุต่ำกว่า 5 ปี ห้ามรับประทาน • อายุ 5 - 7 ปี ครั้งละ 1 เม็ด • อายุ 8 - 14 ปี ครั้งละ 2 เม็ด • อายุ 15 ปีขึ้นไป ครั้งละ 3 เม็ด

  7. ผังงานทางคอมพิวเตอร์ ผังงานทางคอมพิวเตอร์แบ่งออกเป็น 2 ประเภท ได้แก่ • ผังงานระบบ (System flowchart) • ผังงานโปรแกรม (Program flowchart)

  8. ผังงานระบบ(System flowchart) • เป็นผังงานที่ใช้แสดงขั้นตอนการทำงานของระบบงานอย่างกว้าง ๆ ทั้งระบบ โดยแสดงให้เห็นถึงความสัมพันธ์ของส่วนสำคัญต่าง ๆ ในระบบนั้น • เช่น เอกสารเบื้องต้น หรือสื่อบันทึกที่ใช้อยู่เป็นอะไร และผ่านไปยังหน่วยงานใด มีกิจกรรมอะไรในหน่วยงานนั้น ๆ แล้วส่งต่อไปยังหน่วยงานใด เป็นต้น • ดังนั้น ผังงานระบบ จะเกี่ยวข้องกับ คน วัสดุ และเครื่องจักร โดยแสดงการนำข้อมูลเข้า ประมวลผล แสดงผลลัพธ์ ว่ามาจากที่ใดกว้าง ๆ

  9. เริ่มต้น รับความสูง และความยาวฐาน ของสามเหลี่ยม 100 รูป บันทึกความสูงและความยาวฐาน ลงในดิสก์ ดิสก์ที่ บันทึกแล้ว คำนวณพื้นที่ของสามเหลี่ยม พิมพ์รายงานของ พื้นที่สามเหลี่ยม จบ ตัวอย่างผังงานระบบ • ผังงานแสดงการคำนวณพื้นที่สามเหลี่ยมจำนวน 100 รูป

  10. ผังงานโปรแกรม(Program flowchart) • เป็นผังงานที่แสดงขั้นตอนของคำสั่งที่ใช้ในโปรแกรม • ผังงานนี้แยกย่อยมาจากผังงานระบบ โดยผู้เขียนโปรแกรมจะดึงเอาแต่ละจุดที่เกี่ยวข้องกับการประมวลผลในคอมพิวเตอร์ที่ปรากฏในผังงานระบบมาเขียนแสดงรายละเอียดในการประมวลผลอย่างเป็นลำดับขั้นตอน เพื่อนำไปประกอบการเขียนโปรแกรมต่อไป

  11. เริ่มต้น รับความสูง และ ความยาวฐานทีละรูป คำนวณพื้นที่= 0.5 * ฐาน * สูง พิมพ์พื้นที่สามเหลี่ยม ทีละรูป ไม่ใช่ ครบ 100 รูปแล้ว ใช่หรือไม่ ใช่ จบ ตัวอย่างผังงานโปรแกรม • ผังงานแสดงการคำนวณพื้นที่สามเหลี่ยมจำนวน 100 รูป

  12. เริ่มต้น เริ่มต้น รับความสูง และความยาวฐาน ของสามเหลี่ยม 100 รูป รับความสูง และ ความยาวฐานทีละรูป บันทึกความสูงและความยาวฐาน ลงในดิสก์ คำนวณพื้นที่= 0.5 * ฐาน * สูง ดิสก์ที่ บันทึกแล้ว พิมพ์พื้นที่สามเหลี่ยม ทีละรูป คำนวณพื้นที่ของสามเหลี่ยม ไม่ใช่ ครบ 100 รูปแล้ว ใช่หรือไม่ พิมพ์รายงานของ พื้นที่สามเหลี่ยม ใช่ จบ จบ เปรียบเทียบผังงานระบบและผังงานโปรแกรม ผังงานระบบ ผังงานโปรแกรม

  13. ประโยชน์ของการเขียนผังงานประโยชน์ของการเขียนผังงาน • เราสามารถเรียนรู้และเข้าใจผังงานได้ง่าย เพราะผังงานไม่ขึ้นอยู่กับภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่ง • ผังงานเป็นการสื่อความหมายด้วยภาพ ทำให้ง่ายและสะดวกต่อการพิจารณาลำดับขั้นตอนในการทำงานดีกว่าการบรรยายเป็นตัวอักษร • ช่วยให้การค้นหาความผิดพลาดของลำดับการทำงานได้รวดเร็ว และสามารถแก้ไขได้ง่าย • การเขียนโปรแกรมโดยพิจารณาจากผังงาน สามารถทำได้รวดเร็วและง่ายขึ้น • ในการบำรุงรักษาโปรแกรม หรือมีการเปลี่ยนแปลงแก้ไขโปรแกรมให้มีประสิทธิภาพ ถ้าดูจากผังงานจะช่วยให้สามารถทบทวนการทำงานในโปรแกรมได้ง่ายขึ้น

  14. ข้อจำกัดของการเขียนผังงานข้อจำกัดของการเขียนผังงาน • การเขียนผังงานไม่เหมาะกับงานที่มีวิธีการซับซ้อน เช่น มีการที่เงื่อนไขในการทอสอบมากมาย ซึ่งมักจะใช้ตารางการตัดสินใจ(decision table) เข้ามาช่วยมากกว่า

  15. สัญลักษณ์ในการเขียนผังงาน(1/13)สัญลักษณ์ในการเขียนผังงาน(1/13) • การเขียนผังงานเป็นการนำเอาภาพสัญลักษณ์ต่าง ๆ มาเรียงต่อกัน เพื่อแสดงลำดับขั้นตอนการทำงาน โดยมีเส้นลูกศรเชื่อมระหว่างภาพต่างๆ • สัญลักษณ์ในการเขียนผังงานที่นิยมใช้กันนั้น เป็นสัญลักษณ์ของหน่วยงานที่ชื่อว่า American National Standard Institute (ANSI)และ International Standard Organization (ISO)เป็นผู้กำหนดและรวบรวมให้เป็นสัญลักษณ์มาตรฐานในการเขียนผังงาน

  16. สัญลักษณ์ในการเขียนผังงาน(2/13)สัญลักษณ์ในการเขียนผังงาน(2/13) START STOP read name display area

  17. false i <= 10 true แสดง i สัญลักษณ์ในการเขียนผังงาน(3/13) C = A + B Sum = 0

  18. สัญลักษณ์ในการเขียนผังงาน(4/13)สัญลักษณ์ในการเขียนผังงาน(4/13) print A display A , B

  19. A = Age สัญลักษณ์ในการเขียนผังงาน(5/13) read A read A

  20. for i =1 to 100 sum = sum + i i สัญลักษณ์ในการเขียนผังงาน(6/13)

  21. สัญลักษณ์ในการเขียนผังงาน(7/13)สัญลักษณ์ในการเขียนผังงาน(7/13) write A A A = 3 1

  22. punch bi b=1 , …n สัญลักษณ์ในการเขียนผังงาน(8/13) read A punch B , C

  23. สัญลักษณ์ในการเขียนผังงาน(9/13)สัญลักษณ์ในการเขียนผังงาน(9/13) read ID , name

  24. สัญลักษณ์ในการเขียนผังงาน(10/13)สัญลักษณ์ในการเขียนผังงาน(10/13)

  25. สัญลักษณ์ในการเขียนผังงาน(11/13)สัญลักษณ์ในการเขียนผังงาน(11/13) findGrade

  26. สัญลักษณ์ในการเขียนผังงาน(12/13)สัญลักษณ์ในการเขียนผังงาน(12/13)

  27. สัญลักษณ์ในการเขียนผังงาน(13/13)สัญลักษณ์ในการเขียนผังงาน(13/13)

  28. หลักการจัดภาพผังงาน(1/3)หลักการจัดภาพผังงาน(1/3) • ทิศทางของผังงานจะเริ่มจากส่วนบนของหน้ากระดาษลงมายังส่วนล่าง และจากซ้ายมือไปขวามือของหน้ากระดาษ และควรเขียนเครื่องหมายลูกศรกำกับทิศทางไว้ด้วย บน START ทิศทางของเส้น read age age > 60 false true “You are old” ล่าง STOP

  29. หลักการจัดภาพผังงาน(2/3)หลักการจัดภาพผังงาน(2/3) • สัญลักษณ์หรือภาพที่ใช้ในการเขียนผังงานมีขนาดต่าง ๆ กันได้ แต่จะต้องมีรูปมาตรฐานตามความหมายที่กำหนด START sum = 0 ขนาดของสัญลักษณ์ ปรับให้เหมาะสมกับข้อความในสัญลักษณ์ i = 1 to 10 sum = sum + i i sum STOP

  30. หลักการจัดภาพผังงาน(3/3)หลักการจัดภาพผังงาน(3/3) • การเขียนทิศทางของผังงานควรเป็นไปอย่างมีระเบียบ และหลีกเลี่ยงการขีดโยงไปโยงมาในทิศทางตัดกัน ถ้าจำเป็นต้องโยงถึงกัน ควรใช้เครื่องหมายจุดต่อเนื่องแทนและถ้าเป็นไปได้ควรเขียนผังงานให้จบในหน้าเดียวกัน • คำอธิบายในภาพ เขียนเพียงสั้น ๆ และเข้าใจง่าย • ผังงานที่ดีควรจะมีความเป็นระเบียบเรียบร้อยและสะอาด นอกจากนี้แล้ว จะมีชื่อของผังงาน ผู้เขียน วันที่เขียน และเลขหน้าลำดับ

  31. รูปแบบการเขียนผังงาน • แบบตามลำดับ (Sequence) • แบบการเลือก/ตัดสินใจ/เงื่อนไข (Selection/Decision/Condition) • แบบวนซ้ำ (Iteration / Loop)

  32. คำนวณ อ่านข้อมูล งานที่ 1 คำนวณ งานที่ 2 คำนวณข้อมูล คำนวณ งานที่ 3 พิมพ์ผลลัพธ์ รูปแบบตามลำดับ(1/3) • เป็นรูปแบบการเขียนโปรแกรมที่ง่ายที่สุด ทำงานทีละอย่างจากบนลงล่าง แสดงลำดับการทำงานจากบนลงล่างตามลูกศร

  33. START A = 5 B = 3 C = A + B print C STOP รูปแบบตามลำดับ(2/3) เริ่มต้น กำหนดค่าตัวแปร A มีค่าเป็น 5 กำหนดค่าตัวแปร B มีค่าเป็น 3 เอาค่า A บวกกับ B แล้วเก็บไว้ใน C พิมพ์ค่า C จบการทำงาน

  34. START A , B C = A + B print C STOP รูปแบบตามลำดับ(3/3) เริ่มต้น รับข้อมูลมาเก็บไว้ในตัวแปร A, B ทางแป้นพิมพ์ เอาค่า A บวกกับ B แล้วเก็บไว้ใน C พิมพ์ค่า C จบการทำงาน

  35. แบบการเลือก เป็นการเขียนโปรแกรมแบบมีการเปรียบเทียบเงื่อนไข และทำงานตามคำสั่งอย่างใดอย่างหนึ่งตามเงื่อนไขที่กำหนด ผลจากการเปรียบเทียบเงื่อนไข จะให้ผลลัพธ์เป็นจริงหรือเท็จ ถ้าผลเป็นจริง ให้ทำงานตามคำสั่งด้านที่เงื่อนไขเป็นจริง ถ้าเป็นเท็จให้ทำตามคำสั่งด้านที่เงื่อนไขเป็นเท็จ • แบบทางเลือกเดียว (IF - THEN) • แบบสองทางเลือก (IF – THEN - ELSE) • แบบหลายทางเลือก (IF – THEN – ELSE IF | CASE)

  36. จริง จริง เงื่อนไข เงื่อนไข เท็จ เท็จ ประโยคงาน ประโยคงาน 1 ประโยคงาน 2 งานลำดับถัดไป งานลำดับถัดไป แบบทางเลือกเดียว(1/5)

  37. แบบทางเลือกเดียว(2/5) START เริ่มต้น read age รับค่าใส่ตัวแปร age เปรียบเทียบค่า age มากกว่า 60 age > 60 false true ถ้าเป็นจริง พิมพ์ข้อความ You are old ถ้าเป็นเท็จ ไม่ต้องทำอะไร “You are old” จบการทำงาน STOP

  38. เริ่ม รับค่า ans เท็จ ans = “GoodLuck” จริง พิมพ์ Welcome Manager พิมพ์ Exit Password System จบ แบบทางเลือกเดียว(3/5) รับค่า รหัสผ่านจากผู้ใช้ ถ้ารหัสผ่านที่ป้อนมีค่า GoodLuck ให้แสดงข้อว่า Welcome Manager และข้อความ Exit Password System

  39. แบบทางเลือกเดียว(4/5) • บริษัทแห่งหนึ่งต้องการเพิ่มเงินเดือนให้พนักงานที่มีเงินเดือนต่ำกว่า 5000 อีกคนละ 10% และให้พนักงานทุกคนได้รับโบนัสคนละ 3 เท่าของเงินเดือน • ขั้นตอนการประมวลผล • รับค่าชื่อพนักงาน . เงินเดือน • เปรียบเทียบค่า เงินเดือน ถ้าน้อยกว่า 5000 ให้เงินเดือน = เงินเดือน + (เงินเดือน * 10/100) • คำนวณโบนัส = เงินเดือน * 3 • แสดงผลลัพธ์ • จบการทำงาน

  40. แบบทางเลือกเดียว(5/5) A START read name ,salary bonus = salary * 3 salary < 5000 false Name , salary , bonus true salary = salary + (salary*10/100) STOP A แต่ไม่ต้องเขียนเส้นเชื่อมนี้

  41. จริง เงื่อนไข เท็จ ประโยคงาน 1 ประโยคงาน 2 งานลำดับถัดไป ข้อควรจำ • ในการเปรียบเทียบเงื่อนไขแบบ IF – THEN นิยมให้ทำงานตามคำสั่งเมื่อเงื่อนไขมีค่าเป็นจริง ไม่นิยมให้ทำงามตามคำสั่งเป็นเท็จ เท็จ เงื่อนไข ประโยคงาน 1 จริง ประโยคงาน 2 งานลำดับถัดไป

  42. จริง เงื่อนไข เท็จ ประโยคงาน 1 ประโยคงาน 2 งานลำดับถัดไป IF เงื่อนไข THEN BEGIN ประโยคงาน 1 ; ประโยคงาน 2 ; END;

  43. เท็จ เงื่อนไข จริง ประโยคงาน 1 ประโยคงาน 2 งานลำดับถัดไป IF เงื่อนไข THEN ELSE BEGIN ประโยคงาน 1 ; ประโยคงาน 2 ; END;

  44. จริง เท็จ เงื่อนไข ประโยคงาน1 ประโยคงาน2 งานลำดับถัดไป แบบสองทางเลือก(1/6) • การทำงานขึ้นอยู่กับเงื่อนไข ถ้าเป็นจริงไปทำงานด้านหนึ่ง ถ้าเป็นเท็จก็จะไปทำงานอีกอย่างหนึ่ง

  45. แบบสองทางเลือก(2/6) • ถ้า sex =1 เงื่อนไขเป็นจริง จะเพิ่มค่าตัวแปร Male ขึ้นอีก 1 • ถ้า sex =1 เงื่อนไขเป็นเท็จ จะเพิ่มค่าตัวแปร Female ขึ้นอีก 1 True False Sex = 1 Female = Female + 1 Male = Male +1

  46. START read age false age > 60 true “You are young” “You are old” STOP แบบสองทางเลือก(3/6) เริ่มต้น รับค่าใส่ตัวแปร age เปรีบเทียบค่า age มากกว่า 60 ถ้าเป็นจริง พิมพ์ข้อความ You are old ถ้าเป็นเท็จ พิมพ์ข้อความ You are young จบการทำงาน

  47. แบบสองทางเลือก(4/6) เริ่มการทำงาน เริ่ม พิมพ์ Do you like Pascal แสดงข้อความ Do you like Pascal รับค่า ans รับค่าใส่ตัวแปร ans เท็จ จริง ans = ‘y’ OR ans=‘Y’ เปรียบเทียบค่า ans เท่ากับ y หรือ Y • - ถ้าเป็นจริง พิมพ์ • Thank you • ถ้าเป็นเท็จ พิมพ์ • I’m sorry to hear that พิมพ์ I’m sorry to hear that พิมพ์ Thank You พิมพ์ Good Bye พิมพ์คำว่า Goodbye จบการทำงาน จบ

  48. แบบสองทางเลือก(5/6) • บริษัทแห่งหนึ่งต้องการเพิ่มเงินเดือนให้พนักงานที่มีเงินเดือนต่ำกว่า 5000 อีกคนละ 10% และพนักงานที่มีเงินเดือนตั้งแต่ 5000 เพิ่ม 5% ให้พนักงานทุกคนได้รับโบนัสคนละ 3 เท่าของเงินเดือน • ขั้นตอนการประมวลผล • รับค่าชื่อพนักงาน . เงินเดือน • เปรียบเทียบค่า เงินเดือน < 5000 • ถ้าเป็นจริง ให้อัตราเพิ่มเงินเดือน = 10/100 • ถ้าเป็นเท็จให้อัตราเพิ่มเงินเดือน = 5/100 • คำนวณเงินเดือน = เงินเดือน + (เงินเดือน * อัตราเพิ่มเงินเดือน) • โบนัส = เงินเดือน * 3 • แสดงผลลัพธ์ • จบการทำงาน

  49. แบบทางเลือกเดียว(6/6) A START salary = salary+(salary * rate) read name ,salary bonus = salary * 3 false salary < 5000 true rate = 5 / 100 rate = 10 / 100 Name , salary , bonus STOP A แต่ไม่ต้องเขียนเส้นเชื่อมนี้

  50. True False เงื่อนไข 1 True False เงื่อนไข 2 คำสั่งที่ 1 True เงื่อนไข 3 False คำสั่งที่ 2 คำสั่งที่ 4 คำสั่งที่ 3 การเลือกหลายทาง(แบบ IF) • เป็นรูปแบบการเลือกการทำงานที่มีทางเลือกมากกว่า 2 ทางขึ้นไป

More Related