SlideShare a Scribd company logo
1 of 17
Download to read offline
ความหมายของผังงงาน
ผังงาน (Flowchart) คือ รูปภาพ (Image) หรือสัญลักษณ์ (Symbol) ที่ใช้เขียนแทนขั้นตอน คาอธิบาย ข้อความ หรือคาพูด ที่ใช้
ในอัลกอริทึม (Algorithm) เพราะการนาเสนอขั้นตอนของงานให้เข้าใจตรงกัน ระหว่างผู้เกี่ยวข้อง ด้วยคาพูด หรือข้อความทาได้
ยากกว่า ผังงานแบ่งได้ 2 ประเภท คือ ผังงานระบบ (System Flowchart) คือ ผังงานที่แสดงขั้นตอนการทางานในระบบอย่าง
กว้างๆ แต่ไม่เจาะลงในระบบงานย่อย และ ผังงานโปรแกรม (Program Flowchart) คือ ผังงานที่แสดงถึงขั้นตอนในการทางาน
ของโปรแกรม ตั้งแต่รับข้อมูล คานวณ จนถึงแสดงผลลัพธ์
วิธีการเขียนผังงานที่ดี
• ใช้สัญลักษณ์ตามที่กาหนดไว้
• ใช้ลูกศรแสดงทิศทางการไหลของข้อมูลจากบนลงล่าง หรือจาก
ซ้ายไปขวา
• คาอธิบายในภาพควรสั้นกระทัดรัด และเข้าใจง่าย
• ทุกแผนภาพต้องมีลูกศรแสดงทิศทางเข้า – ออก
• ไม่ควรโยงเส้นเชื่อมผังงานที่อยู่ไกลมาก ๆ ควรใช้สัญลักษณ์
จุดเชื่อมต่อแทน
• ผังงานควรมีการทดสอบความถูกต้องของการทางานก่อนนาไป
เขียนโปรแกรม
ตารางแสดงสัญลักษณ์ผังงาน
การทางานด้วยมือ (manual operation) แทนจุดที่มีการทางานด้วยแรงคน
การนาข้อมูลเข้า-ออกโดยทั่วไป (general
input/output)
แทนจุดที่จะนาข้อมูลเข้าหรือออกจากระบบคอมพิวเตอร์โดยไม่
ระบุชนิดของอุปกรณ์
แถบบันทึกข้อมูล (magnetic tape)
แทนจุดที่นาข้อมูลเข้าหรือออกจากโปรแกรมด้วยแผ่นบันทึก
ข้อมูล
จานบันทึกข้อมูล (magnetic tape)
แทนจุดที่นาข้อมูลเข้าหรือออกจากโปรแกรมด้วยจานบันทึก
ข้อมูล
การนาข้อมูลเข้าด้วยมือ (manual input) แทนจุดที่นาข้อมูลเข้าด้วยมือ
การแสดงข้อมูล (display) แทนจุดที่แสดงข้อมูลด้วยจอภาพ
การทาเอกสาร (documentation) แทนจุดที่มีข้อมูลเป็นเอกสารหรือแสดงข้อมูลด้วยเครื่องพิมพ์
การตัดสินใจ (decision) แทนจุดที่ต้องเลือกปฏิบัติอย่างใดอย่างหนึ่ง
การปฏิบัติงาน (process) แทนจุดที่มีการปฏิบัติงานอย่างใดอย่างหนึ่ง
การเตรียมการ (preparation) แทนจุดกาหนดชื่อข้อมูลหรือค่าเริ่มต้นต่างๆ
การเรียกโปรแกรมภายนอก (external
subroutine)
แทนจุดเรียกใช้โปรแกรมย่อยที่ไม่ได้อยู่ในโปรแกรมนั้น
การเรียกโปรแกรมภายใน (internal
subroutine)
แทนจุดเรียกใช้โปรแกรมย่อยที่อยู่ในโปรแกรมนั้น
การเรียงข้อมูล (sort) แทนจุดที่มีการเรียงข้อมูลใหม่ตามข้อกาหนด
ทิศทาง (flow line)
แทนทิศทางขั้นตอนการดาเนินงานซึ่จะปฏิบัติต่อเนื่องกันตามหัว
ลูกศรชี้
หมายเหตุ (annotation)
แทนจุดที่แสดงรายละเอียดเพิ่มเติมหรือหมายเหตุของจุดต่างๆ ที่
แสดงในผังงานด้วยสัญลักษณ์ไม่ชัดเจน
การติดต่อทางไกล (communication
link)
แทนช่วงที่มีการติดต่อหรือย้ายข้อมูลด้วยระบบการติดต่อทางไกล
จุดเชื่อมต่อ (connector) แทนจุดเชื่อมต่อของผังงานเมื่อใช้สัญญลักษณ์เพื่อให้ดูง่าย
จุดเชื่อมต่อหน้ากระดาษ (off page
connector)
แทนจุดเชื่อมต่อของผังงานที่อยู่คนละหน้ากระดาษ
การติดต่อทางไกล (communication
link)
แทนช่วงที่มีการติดต่อหรือย้ายข้อมูลด้วยระบบการติดต่อ
ทางไกล
จุดเชื่อมต่อ (connector) แทนจุดเชื่อมต่อของผังงานเมื่อใช้สัญญลักษณ์เพื่อให้ดูง่าย
จุดเชื่อมต่อหน้ากระดาษ (off page
connector)
แทนจุดเชื่อมต่อของผังงานที่อยู่คนละหน้ากระดาษ
เริ่มต้นและลงท้าย (terminal)
แทนจุดเริ่มต้นและลงท้ายของผังงานของโปรแกรมหลักและ
โปรแกรมย่อย
รูปแบบการเขียนผังงาน
•แบบตามลาดับ (Sequence)
•แบบการเลือก/ตัดสินใจ/เงื่อนไข (Selection/Decision/Condition)
•แบบวนซ้า (Iteration / Loop)
1.)โครงสร้างแบบเป็นลาดับ (Sequence Structure)
โครงสร้างลักษณะนี้เป็นโครงสร้างพื้นฐานของผังงาน และเป็นลักษณะขั้นตอนการทางานที่พบมากที่สุด คือทางานทีละขั้นตอน
ลาดับ
ตัวอย่างผังงานที่มีโครงสร้างแบบเป็นลาดับ
จากตัวอย่างผังงานการคานวณดอกเบี้ย สามารถอธิบายเป็นขั้นตอนได้ดังนี้
1.เริ่มต้นการทางาน
2.รับค่าเงินต้น และอัตราดอกเบี้ยเพื่อใช้ในการคานวณหาดอกเบี้ย
3.คานวณหาดอกเบี้ยโดยใช้สมการต่อไปนี้
ดอกเบี้ย = เงินต้น * อัตราดอกเบี้ย
4.แสดงค่าของดอกเบี้ยซึ่งคานวณได้
5.จบการทางาน
2.)โครงสร้างแบบมีตัวเลือก (Selection Structure)
โครงสร้างการทางานแบบมีการเลือกมีรูปแบบที่ซับซ้อนกว่าโครงสร้างแบบเป็นลาดับรูปแบบที่ง่ายที่สุดของโครงสร้าง
แบบนี้คือ การเลือกแบบมีทางออก 2 ทาง ในการเลือกแบบมีทางออก 2 ทาง นี้จะมีทางออกจากสัญลักษณ์การ
ตัดสินใจเพียง 2 ทาง คือ ใช่หรือไม่ใช่ เท่านั้น (แต่ระบบการเขียนผังงานระบบ อนุญาตให้มีทางออกจากการตัดสินใจ
ได้มากกว่า 2 ทาง)
ตัวอย่างผังงานที่มีโครงสร้างแบบมีการเลือก
ผังงานการคานวณดอกเบี้ยซึ่งมีอัตราดอกเบี้ย 2 อัตรา คือถ้าเงินต้นน้อยกว่า 1 ล้านบาท จะคิดดอกเบี้ยด้วยอัตราร้อย
ละ 4 แต่ถ้ามีเงินต้นมากกว่า 1 ล้านบาท จะคิดดอกเบี้ยด้วยอัตราร้อยละ 5
จากผังงานสามารถอธิบายเป็นขั้นตอนได้ดังนี้
1.เริ่มต้นการทางาน
2.รับค่าเงินต้น
3.พิจารณาเงินต้นที่รับค่าเข้ามามากกว่า 1 ล้านบาทหรือไม่
- - ถ้าใช่ ให้คานวณดอกเบี้ยในอัตราร้อยละ 5
ดังนั้น ดอกเบี้ย = เงินต้น * 0.05
- - ถ้าไม่ใช่ ให้คานวณดอกเบี้ยในอัตราร้อยละ 5
ดังนั้น ดอกเบี้ย = เงินต้น * 0.04
4.แสดงค่าดอกเบี้ยที่คานวณได้
5.จบการทางาน
3.)โครงสร้างแบบทาซ้า (Iteration Structure)
โครงสร้างการทางานแบบทาซ้า จะทางานแบบเดียวกันซ้าไปเรื่อย ๆ ในขณะที่ยังเป็นไปตามเงื่อนไขหรือเงื่อนไข
เป็นจริง จนกระทั้งเงื่อนไขเป็นเท็จจึงทางานอื่นต่อไป
ตัวอย่างผังงานที่มีโครงสร้างแบบทาซ้า
ผังงานการคานวณยอดบัญชี (เงินต้นทบดอกเบี้ย)
จากตัวอย่างผังงานสามารถอธิบายเป็นขั้นตอนได้ดังนี้
1.เริ่มต้นการทางาน
2.รับค่าเงินต้น อัตราดอกเบี้ย และจานวนปีที่ฝากเงิน ซึ่งเป็นข้อมูลที่จาเป็นในการคานวณยอดบัญชี (เงินต้นทบ
ดอกเบี้ยตามจานวนปี ที่ฝากเงิน)
3.กาหนดให้ n มีค่าเท่ากับ 0 ในผังงานนี้n คือจานวนรอบของการคิดดอกเบี้ย
4.กาหนดยอดบัญชีเริ่มต้นให้เท่ากับเงินต้นที่รับค่าเข้ามา
5.เปรียบเทียบว่า n น้อยกว่าจานวนปีที่ฝากเงินหรือไม่
5.1 ถ้าใช่ให้ทาตามขั้นตอนต่อไปนี้
- คานวณยอดบัญชีใหม่โดยทบดอกเบี้ยเพิ่มเข้าไปจากยอดบัญชีเดิม
โดยใช้สมการต่อไปนี้
ยอดบัญชี = ยอดบัญชี + (ยอดบัญชี * อัตราดอกเบี้ย)
- เพิ่มค่า n ไปอีก 1
- กลับไปเปรียบเทียบเงื่อนไขในข้อ 5
5.2 ถ้าไม่ใช่ แสดงว่าคิดดอกเบี้ยทบต้นครบตามจานวนปีที่ฝากเงินซึ่งรับค่าเข้ามาแล้วให้ทาตามขั้นตอนต่อไปนี้
- แสดงค่ายอดบัญชีสุดท้ายที่คานวณได้
- จบการทางาน
โครงสร้างเรียงลาดับ Sequence
โครงสร้างแรกที่จะกล่าวถึงก็คือโครงสร้างแบบ Sequence หรือโครงสร้างแบบ
เรียงลาดับ เป็นโครงสร้างที่นาเสนอเนื้อหาเป็นลาดับ เส้นตรง ผู้เข้าใช้บริการ Website
จะต้องอ่านเนื้อหาให้จบทีละหน้าตามลาดับ ไม่สามารถเห็นเนื้อหาหน้าอื่นได้ Web จะ
คล้ายคลึงกับการนาเสนอบทเรียนคอมพิวเตอร์ช่วยสอนแบบ Liner
ส่วนใหญ่การนาเสนอเนื้อหาแบบ Sequence นี้จะเป็นประเภทบริการฐานข้อมูล
เช่น Search Engine ต่างๆ เช่น Google.com, Yahoo.com หรือ Search Engine ที่สืบค้น
ข้อมูลในห้องสมุด ลักษณะการนาเสนอเป็นดังภาพข้างต้น
การนาเสนอระดับ Main Page จะถูกนาเสนอแบบเรียงลาดับ ส่วนระดับ
รายละเอียด Detail Page จะนาเสนอในระดับล่างลงมา อย่างไรก็ตาม หากต้องการจะดู
เนื้อหาในหัวข้อ Main Page ถัดไปจะไม่สามารถทาได้ จะต้องอ่านส่วน Detail Page ในหัว
เรื่องนั้นให้จบเสียก่อน ดังภาพข้างล่าง
ข้อดี
เหมาะสาหรับการนาเสนอในรูปแบบของการบริการฐานข้อมูล เช่น Search Engine
ต่างๆ iระบบฐานข้อมูลห้องสมุด ระบบฐานข้อมูล Video on Demand เพราะข้อมูลทุกหน้า
ผู้ใช้บริการจะต้องอ่านใช้ความละเอียดดูทุกหน้าเพื่อไม่ให้พลาดข้อมูลที่ตนเองต้องการ
ข้อเสีย
ผู้ใช้บริการจะต้องเสียเวลาอ่านในทุกๆหน้า ไม่สามารถข้ามไปเรื่องอื่นๆหน้าอื่นๆที่
สนใจได้หรือออกจากหน้า Page ทันทีได้ ไม่เหมาะสาหรับการนาเสนอเพื่อประชาสัมพันธ์
หรือเพื่อการศึกษา เพราะผู้ใช้บริการจะไม่เป็นอิสระจะรู้สึกเหมือนถูกบังคับให้อ่าน เช่น
Webpage ของทางราชการเป็นต้น
ประโยชน์ของผังงาน
 ช่วยลาดับขั้นตอนการทางานของโปรแกรม และสามารถนาไปเขียนโปรแกรมได้โดยไม่
สับสน
 ช่วยในการตรวจสอบ และแก้ไขโปรแกรมได้ง่าย เมื่อเกิดข้อผิดพลาด
 ช่วยให้การดัดแปลง แก้ไข ทาได้อย่างสะดวกและรวดเร็ว
 ช่วยให้ผู้อื่นสามารถศึกษาการทางานของโปรแกรมได้อย่างง่าย และรวดเร็วมากขึ้น
 สามารถเรียนรู้และเข้าใจได้ง่าย เพื่อผังงานไม่ขึ้นอยู่กับภาษาคอมพิวเตอร์ภาษาใด
ภาษาหนึ่งโดยเฉพาะ
 ผังงานเป็นการสื่อความหมายด้วยภาพ ทาให้ง่ายและสะดวกในการพิจารณาถึง
ลาดับขั้นตอนในการทางาน ต่างกับการบรรยายเป็นตัวอักษร เพราะอาจสื่อ
ความหมายผิดไปได้
 ในโปรแกรมที่ไม่ซับซ้อน สามารถใช้ผังงานตรวจสอบความถูกต้องของลาดับขั้นตอน
ได้ง่ายถ้ามีข้อผิดพลาด สามารถแก้ไขได้สะดวกและรวดเร็ว
 การเขียนโปรแกรมโดยพิจารณาจากผังงาน สามารถทางานง่ายและรวดเร็ว
 การบารุงรักษาโปรแกรม เมื่อมีการเปลี่ยนแปลงแก้ไขโปรแกรม สามารถดูผังงานเพื่อ
แก้ไขคาสั่งใน
1. โปรแกรม XMind
โปรแกรมช่วยสร้างผังงาน
โปรแกรม XMind เป็นโปรแกรมช่วยในการเขียนแผนผังความคิด (Mind Map) ที่ไม่ต้องเสียค่าลิขสิทธิ์โปรแกรมใดๆ
ทั้งสิ้น โดยโปรแกรมมีคุณสมบัติเด่นคือ โปรแกรม XMIND สามารถสร้างภาพความคิด (Visualized Idea) ในรูปแบบ
ต่างๆ ได้หลากหลายประกอบด้วย
1. การสร้างแผนที่ความคิด (Mind Map) เพื่อการจัดการความคิด
2. การสร้างแผนผังก้างปลา (Fishbone Diageam) เพื่อการวิเคราะห์ปัจจัยและปัญหา
3. การสร้างผังองค์กร (Organization Chart) ออกแบบผังองค์กรและงาน
4. การสร้างผังการตัดสินใจ (Decision Tree) เพื่อการวิเคราะห์ทางเลือก
5. การสร้างตารางความคิด (Idea spreadsheet)
6. อื่นๆ ตามจินตนาการ (Imagine map)
2. Dia โปรแกรมออกแบบผังงาน
Dia หรือ Diagram เป็นโปรแกรมสาหรับออกแบบแผนผัง Diagram Flowchart ในกลุ่ม
โอเพนซอร์ส (OSS) มีเครื่องมือให้ใช้งานหลากหลายรูปแบบ เช่น Flowchart, Map เป็น
ต้น สามารถออกแบบแผนงานได้หลากหลาย เช่น ออกแบบผังห้องคอมพิวเตอร์, ออกแบบ
ER-Diagram เป็นต้น ทาให้ Dia เป็นโปรแกรมออกแบบผังงานในระดับที่ดี
(Diagramming tool)
3.โปรแกรม Edraw Mind Map
Edraw Mind Map เป็นโปรแกรมสร้างแผนผังมโนทัศน์หรือแผนผังความคิด (Mind Map) โดยโปรแกรมมี
ตัวอย่าง มีแม่แบบตลอดจนมีวัตถุ (Object) ในลักษณะต่างๆ ที่เอาไว้ใช้จัดการกับแผนความคิดที่หลากหลาย
การใช้งานโปรแกรมมีความง่าย ผลงานที่ได้จึงมีความสวยงาม นอกจากนั้นผลงานเมื่อจัดทาเสร็จแล้วยัง
สามารถนาออกไปเพื่อใช้งานได้หลากหลายรูปแบบครอบคลุมการทางานปัจจุบันได้เป็นอย่างดี
4. โปรแกรม FreeMind
เป็นโปรแกรมสาหรับสร้าง Mind Map ที่ใช้สาหรับการจัดการ และ บริหารความคิดของสมองให้
เป็นไปอย่างมีระเบียบแบบแผน โปรแกรมเป็นซอฟต์แวร์โอเพนซอร์ส ได้ถูกพัฒนาขึ้นบนภาษาจาวา
(Java) เพราะภาษาจาวามีความยืดหยุ่นสูง รองรับการท างานบนระบบปฏิบัติการได้หลากหลาย
อาทิเช่น Windows, Mac OS และ LINUX ดังนั้น จึงต้องดาวน์โหลดตัวแปลภาษาจาวามาติดตั้ง
ก่อน จึงจะสามารถทาการติดตั้ง FreeMind และใช้งาน FreeMind ได้อย่างมีประสิทธิภาพสูงที่สุด
บทที่8

More Related Content

Similar to บทที่8

C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น
C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้นC:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น
C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น-
 
ผังงาน (Flowchart)3
ผังงาน (Flowchart)3ผังงาน (Flowchart)3
ผังงาน (Flowchart)3Game33
 
วัฒนาอ่อนนุ้ย
วัฒนาอ่อนนุ้ยวัฒนาอ่อนนุ้ย
วัฒนาอ่อนนุ้ยfinverok
 
Doc 40720.914467592650
Doc 40720.914467592650Doc 40720.914467592650
Doc 40720.914467592650Jakkree Eiei
 
งานนำเสนอ1 คอม
งานนำเสนอ1 คอมงานนำเสนอ1 คอม
งานนำเสนอ1 คอมnuknook
 
งานนำเสนอ1 คอม
งานนำเสนอ1 คอมงานนำเสนอ1 คอม
งานนำเสนอ1 คอมPassawan' Koohar
 
ผังงาน (Flowchart)
ผังงาน (Flowchart)ผังงาน (Flowchart)
ผังงาน (Flowchart)Theruangsit
 
ผังงาน (Flowchart)1
ผังงาน (Flowchart)1ผังงาน (Flowchart)1
ผังงาน (Flowchart)1Game33
 
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศการแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศKru.Mam Charoensansuay
 
การเขียนแผนภาพ DFD
การเขียนแผนภาพ DFDการเขียนแผนภาพ DFD
การเขียนแผนภาพ DFDskiats
 
พื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาพื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาSaranporn Rungrueang
 
บทที่ 3 การวิเคราะห์ระบบและการออกแบบระบบ
บทที่ 3 การวิเคราะห์ระบบและการออกแบบระบบบทที่ 3 การวิเคราะห์ระบบและการออกแบบระบบ
บทที่ 3 การวิเคราะห์ระบบและการออกแบบระบบSarawut Panchon
 
การแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธี
การแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธีการแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธี
การแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธีSaranyu Srisrontong
 
พื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาพื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาAeew Autaporn
 

Similar to บทที่8 (20)

C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น
C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้นC:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น
C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น
 
UML
UMLUML
UML
 
ผังงาน (Flowchart)3
ผังงาน (Flowchart)3ผังงาน (Flowchart)3
ผังงาน (Flowchart)3
 
Chapter05
Chapter05Chapter05
Chapter05
 
วัฒนาอ่อนนุ้ย
วัฒนาอ่อนนุ้ยวัฒนาอ่อนนุ้ย
วัฒนาอ่อนนุ้ย
 
Doc 40720.914467592650
Doc 40720.914467592650Doc 40720.914467592650
Doc 40720.914467592650
 
งานนำเสนอ1 คอม
งานนำเสนอ1 คอมงานนำเสนอ1 คอม
งานนำเสนอ1 คอม
 
งานนำเสนอ1 คอม
งานนำเสนอ1 คอมงานนำเสนอ1 คอม
งานนำเสนอ1 คอม
 
ผังงาน (Flowchart)
ผังงาน (Flowchart)ผังงาน (Flowchart)
ผังงาน (Flowchart)
 
ผังงาน (Flowchart)1
ผังงาน (Flowchart)1ผังงาน (Flowchart)1
ผังงาน (Flowchart)1
 
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศการแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
 
การเขียนแผนภาพ DFD
การเขียนแผนภาพ DFDการเขียนแผนภาพ DFD
การเขียนแผนภาพ DFD
 
Chapter02
Chapter02Chapter02
Chapter02
 
พื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาพื้นฐานภาษาจาวา
พื้นฐานภาษาจาวา
 
บทที่ 3 การวิเคราะห์ระบบและการออกแบบระบบ
บทที่ 3 การวิเคราะห์ระบบและการออกแบบระบบบทที่ 3 การวิเคราะห์ระบบและการออกแบบระบบ
บทที่ 3 การวิเคราะห์ระบบและการออกแบบระบบ
 
การแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธี
การแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธีการแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธี
การแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธี
 
ระบบสารสนเทศ
ระบบสารสนเทศระบบสารสนเทศ
ระบบสารสนเทศ
 
พื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาพื้นฐานภาษาจาวา
พื้นฐานภาษาจาวา
 
Sdlc
SdlcSdlc
Sdlc
 
Sdlc
SdlcSdlc
Sdlc
 

More from galswen

บทที่6 1 17_36_ห้อง62
บทที่6 1 17_36_ห้อง62บทที่6 1 17_36_ห้อง62
บทที่6 1 17_36_ห้อง62galswen
 
บทที่ 32
บทที่ 32บทที่ 32
บทที่ 32galswen
 
บทที่ 11 เทคโนโลยีสารสนเทศ
บทที่ 11 เทคโนโลยีสารสนเทศบทที่ 11 เทคโนโลยีสารสนเทศ
บทที่ 11 เทคโนโลยีสารสนเทศgalswen
 
บทที่9 ม 6_6เลขที่10_28_44_สมบูรณ์
บทที่9 ม 6_6เลขที่10_28_44_สมบูรณ์บทที่9 ม 6_6เลขที่10_28_44_สมบูรณ์
บทที่9 ม 6_6เลขที่10_28_44_สมบูรณ์galswen
 
บทที่1
บทที่1บทที่1
บทที่1galswen
 
Test Upload
Test UploadTest Upload
Test Uploadgalswen
 

More from galswen (6)

บทที่6 1 17_36_ห้อง62
บทที่6 1 17_36_ห้อง62บทที่6 1 17_36_ห้อง62
บทที่6 1 17_36_ห้อง62
 
บทที่ 32
บทที่ 32บทที่ 32
บทที่ 32
 
บทที่ 11 เทคโนโลยีสารสนเทศ
บทที่ 11 เทคโนโลยีสารสนเทศบทที่ 11 เทคโนโลยีสารสนเทศ
บทที่ 11 เทคโนโลยีสารสนเทศ
 
บทที่9 ม 6_6เลขที่10_28_44_สมบูรณ์
บทที่9 ม 6_6เลขที่10_28_44_สมบูรณ์บทที่9 ม 6_6เลขที่10_28_44_สมบูรณ์
บทที่9 ม 6_6เลขที่10_28_44_สมบูรณ์
 
บทที่1
บทที่1บทที่1
บทที่1
 
Test Upload
Test UploadTest Upload
Test Upload
 

บทที่8

  • 1. ความหมายของผังงงาน ผังงาน (Flowchart) คือ รูปภาพ (Image) หรือสัญลักษณ์ (Symbol) ที่ใช้เขียนแทนขั้นตอน คาอธิบาย ข้อความ หรือคาพูด ที่ใช้ ในอัลกอริทึม (Algorithm) เพราะการนาเสนอขั้นตอนของงานให้เข้าใจตรงกัน ระหว่างผู้เกี่ยวข้อง ด้วยคาพูด หรือข้อความทาได้ ยากกว่า ผังงานแบ่งได้ 2 ประเภท คือ ผังงานระบบ (System Flowchart) คือ ผังงานที่แสดงขั้นตอนการทางานในระบบอย่าง กว้างๆ แต่ไม่เจาะลงในระบบงานย่อย และ ผังงานโปรแกรม (Program Flowchart) คือ ผังงานที่แสดงถึงขั้นตอนในการทางาน ของโปรแกรม ตั้งแต่รับข้อมูล คานวณ จนถึงแสดงผลลัพธ์
  • 2. วิธีการเขียนผังงานที่ดี • ใช้สัญลักษณ์ตามที่กาหนดไว้ • ใช้ลูกศรแสดงทิศทางการไหลของข้อมูลจากบนลงล่าง หรือจาก ซ้ายไปขวา • คาอธิบายในภาพควรสั้นกระทัดรัด และเข้าใจง่าย • ทุกแผนภาพต้องมีลูกศรแสดงทิศทางเข้า – ออก • ไม่ควรโยงเส้นเชื่อมผังงานที่อยู่ไกลมาก ๆ ควรใช้สัญลักษณ์ จุดเชื่อมต่อแทน • ผังงานควรมีการทดสอบความถูกต้องของการทางานก่อนนาไป เขียนโปรแกรม
  • 3. ตารางแสดงสัญลักษณ์ผังงาน การทางานด้วยมือ (manual operation) แทนจุดที่มีการทางานด้วยแรงคน การนาข้อมูลเข้า-ออกโดยทั่วไป (general input/output) แทนจุดที่จะนาข้อมูลเข้าหรือออกจากระบบคอมพิวเตอร์โดยไม่ ระบุชนิดของอุปกรณ์ แถบบันทึกข้อมูล (magnetic tape) แทนจุดที่นาข้อมูลเข้าหรือออกจากโปรแกรมด้วยแผ่นบันทึก ข้อมูล จานบันทึกข้อมูล (magnetic tape) แทนจุดที่นาข้อมูลเข้าหรือออกจากโปรแกรมด้วยจานบันทึก ข้อมูล การนาข้อมูลเข้าด้วยมือ (manual input) แทนจุดที่นาข้อมูลเข้าด้วยมือ การแสดงข้อมูล (display) แทนจุดที่แสดงข้อมูลด้วยจอภาพ การทาเอกสาร (documentation) แทนจุดที่มีข้อมูลเป็นเอกสารหรือแสดงข้อมูลด้วยเครื่องพิมพ์ การตัดสินใจ (decision) แทนจุดที่ต้องเลือกปฏิบัติอย่างใดอย่างหนึ่ง การปฏิบัติงาน (process) แทนจุดที่มีการปฏิบัติงานอย่างใดอย่างหนึ่ง การเตรียมการ (preparation) แทนจุดกาหนดชื่อข้อมูลหรือค่าเริ่มต้นต่างๆ การเรียกโปรแกรมภายนอก (external subroutine) แทนจุดเรียกใช้โปรแกรมย่อยที่ไม่ได้อยู่ในโปรแกรมนั้น การเรียกโปรแกรมภายใน (internal subroutine) แทนจุดเรียกใช้โปรแกรมย่อยที่อยู่ในโปรแกรมนั้น การเรียงข้อมูล (sort) แทนจุดที่มีการเรียงข้อมูลใหม่ตามข้อกาหนด ทิศทาง (flow line) แทนทิศทางขั้นตอนการดาเนินงานซึ่จะปฏิบัติต่อเนื่องกันตามหัว ลูกศรชี้ หมายเหตุ (annotation) แทนจุดที่แสดงรายละเอียดเพิ่มเติมหรือหมายเหตุของจุดต่างๆ ที่ แสดงในผังงานด้วยสัญลักษณ์ไม่ชัดเจน การติดต่อทางไกล (communication link) แทนช่วงที่มีการติดต่อหรือย้ายข้อมูลด้วยระบบการติดต่อทางไกล จุดเชื่อมต่อ (connector) แทนจุดเชื่อมต่อของผังงานเมื่อใช้สัญญลักษณ์เพื่อให้ดูง่าย จุดเชื่อมต่อหน้ากระดาษ (off page connector) แทนจุดเชื่อมต่อของผังงานที่อยู่คนละหน้ากระดาษ
  • 4. การติดต่อทางไกล (communication link) แทนช่วงที่มีการติดต่อหรือย้ายข้อมูลด้วยระบบการติดต่อ ทางไกล จุดเชื่อมต่อ (connector) แทนจุดเชื่อมต่อของผังงานเมื่อใช้สัญญลักษณ์เพื่อให้ดูง่าย จุดเชื่อมต่อหน้ากระดาษ (off page connector) แทนจุดเชื่อมต่อของผังงานที่อยู่คนละหน้ากระดาษ เริ่มต้นและลงท้าย (terminal) แทนจุดเริ่มต้นและลงท้ายของผังงานของโปรแกรมหลักและ โปรแกรมย่อย รูปแบบการเขียนผังงาน •แบบตามลาดับ (Sequence) •แบบการเลือก/ตัดสินใจ/เงื่อนไข (Selection/Decision/Condition) •แบบวนซ้า (Iteration / Loop)
  • 5. 1.)โครงสร้างแบบเป็นลาดับ (Sequence Structure) โครงสร้างลักษณะนี้เป็นโครงสร้างพื้นฐานของผังงาน และเป็นลักษณะขั้นตอนการทางานที่พบมากที่สุด คือทางานทีละขั้นตอน ลาดับ ตัวอย่างผังงานที่มีโครงสร้างแบบเป็นลาดับ
  • 7. 2.)โครงสร้างแบบมีตัวเลือก (Selection Structure) โครงสร้างการทางานแบบมีการเลือกมีรูปแบบที่ซับซ้อนกว่าโครงสร้างแบบเป็นลาดับรูปแบบที่ง่ายที่สุดของโครงสร้าง แบบนี้คือ การเลือกแบบมีทางออก 2 ทาง ในการเลือกแบบมีทางออก 2 ทาง นี้จะมีทางออกจากสัญลักษณ์การ ตัดสินใจเพียง 2 ทาง คือ ใช่หรือไม่ใช่ เท่านั้น (แต่ระบบการเขียนผังงานระบบ อนุญาตให้มีทางออกจากการตัดสินใจ ได้มากกว่า 2 ทาง)
  • 8. ตัวอย่างผังงานที่มีโครงสร้างแบบมีการเลือก ผังงานการคานวณดอกเบี้ยซึ่งมีอัตราดอกเบี้ย 2 อัตรา คือถ้าเงินต้นน้อยกว่า 1 ล้านบาท จะคิดดอกเบี้ยด้วยอัตราร้อย ละ 4 แต่ถ้ามีเงินต้นมากกว่า 1 ล้านบาท จะคิดดอกเบี้ยด้วยอัตราร้อยละ 5 จากผังงานสามารถอธิบายเป็นขั้นตอนได้ดังนี้ 1.เริ่มต้นการทางาน 2.รับค่าเงินต้น 3.พิจารณาเงินต้นที่รับค่าเข้ามามากกว่า 1 ล้านบาทหรือไม่ - - ถ้าใช่ ให้คานวณดอกเบี้ยในอัตราร้อยละ 5 ดังนั้น ดอกเบี้ย = เงินต้น * 0.05 - - ถ้าไม่ใช่ ให้คานวณดอกเบี้ยในอัตราร้อยละ 5 ดังนั้น ดอกเบี้ย = เงินต้น * 0.04 4.แสดงค่าดอกเบี้ยที่คานวณได้ 5.จบการทางาน
  • 9. 3.)โครงสร้างแบบทาซ้า (Iteration Structure) โครงสร้างการทางานแบบทาซ้า จะทางานแบบเดียวกันซ้าไปเรื่อย ๆ ในขณะที่ยังเป็นไปตามเงื่อนไขหรือเงื่อนไข เป็นจริง จนกระทั้งเงื่อนไขเป็นเท็จจึงทางานอื่นต่อไป ตัวอย่างผังงานที่มีโครงสร้างแบบทาซ้า ผังงานการคานวณยอดบัญชี (เงินต้นทบดอกเบี้ย)
  • 10. จากตัวอย่างผังงานสามารถอธิบายเป็นขั้นตอนได้ดังนี้ 1.เริ่มต้นการทางาน 2.รับค่าเงินต้น อัตราดอกเบี้ย และจานวนปีที่ฝากเงิน ซึ่งเป็นข้อมูลที่จาเป็นในการคานวณยอดบัญชี (เงินต้นทบ ดอกเบี้ยตามจานวนปี ที่ฝากเงิน) 3.กาหนดให้ n มีค่าเท่ากับ 0 ในผังงานนี้n คือจานวนรอบของการคิดดอกเบี้ย 4.กาหนดยอดบัญชีเริ่มต้นให้เท่ากับเงินต้นที่รับค่าเข้ามา 5.เปรียบเทียบว่า n น้อยกว่าจานวนปีที่ฝากเงินหรือไม่ 5.1 ถ้าใช่ให้ทาตามขั้นตอนต่อไปนี้ - คานวณยอดบัญชีใหม่โดยทบดอกเบี้ยเพิ่มเข้าไปจากยอดบัญชีเดิม โดยใช้สมการต่อไปนี้ ยอดบัญชี = ยอดบัญชี + (ยอดบัญชี * อัตราดอกเบี้ย) - เพิ่มค่า n ไปอีก 1 - กลับไปเปรียบเทียบเงื่อนไขในข้อ 5 5.2 ถ้าไม่ใช่ แสดงว่าคิดดอกเบี้ยทบต้นครบตามจานวนปีที่ฝากเงินซึ่งรับค่าเข้ามาแล้วให้ทาตามขั้นตอนต่อไปนี้ - แสดงค่ายอดบัญชีสุดท้ายที่คานวณได้ - จบการทางาน
  • 11. โครงสร้างเรียงลาดับ Sequence โครงสร้างแรกที่จะกล่าวถึงก็คือโครงสร้างแบบ Sequence หรือโครงสร้างแบบ เรียงลาดับ เป็นโครงสร้างที่นาเสนอเนื้อหาเป็นลาดับ เส้นตรง ผู้เข้าใช้บริการ Website จะต้องอ่านเนื้อหาให้จบทีละหน้าตามลาดับ ไม่สามารถเห็นเนื้อหาหน้าอื่นได้ Web จะ คล้ายคลึงกับการนาเสนอบทเรียนคอมพิวเตอร์ช่วยสอนแบบ Liner ส่วนใหญ่การนาเสนอเนื้อหาแบบ Sequence นี้จะเป็นประเภทบริการฐานข้อมูล เช่น Search Engine ต่างๆ เช่น Google.com, Yahoo.com หรือ Search Engine ที่สืบค้น ข้อมูลในห้องสมุด ลักษณะการนาเสนอเป็นดังภาพข้างต้น การนาเสนอระดับ Main Page จะถูกนาเสนอแบบเรียงลาดับ ส่วนระดับ รายละเอียด Detail Page จะนาเสนอในระดับล่างลงมา อย่างไรก็ตาม หากต้องการจะดู เนื้อหาในหัวข้อ Main Page ถัดไปจะไม่สามารถทาได้ จะต้องอ่านส่วน Detail Page ในหัว เรื่องนั้นให้จบเสียก่อน ดังภาพข้างล่าง ข้อดี เหมาะสาหรับการนาเสนอในรูปแบบของการบริการฐานข้อมูล เช่น Search Engine ต่างๆ iระบบฐานข้อมูลห้องสมุด ระบบฐานข้อมูล Video on Demand เพราะข้อมูลทุกหน้า ผู้ใช้บริการจะต้องอ่านใช้ความละเอียดดูทุกหน้าเพื่อไม่ให้พลาดข้อมูลที่ตนเองต้องการ ข้อเสีย ผู้ใช้บริการจะต้องเสียเวลาอ่านในทุกๆหน้า ไม่สามารถข้ามไปเรื่องอื่นๆหน้าอื่นๆที่ สนใจได้หรือออกจากหน้า Page ทันทีได้ ไม่เหมาะสาหรับการนาเสนอเพื่อประชาสัมพันธ์ หรือเพื่อการศึกษา เพราะผู้ใช้บริการจะไม่เป็นอิสระจะรู้สึกเหมือนถูกบังคับให้อ่าน เช่น Webpage ของทางราชการเป็นต้น
  • 12. ประโยชน์ของผังงาน  ช่วยลาดับขั้นตอนการทางานของโปรแกรม และสามารถนาไปเขียนโปรแกรมได้โดยไม่ สับสน  ช่วยในการตรวจสอบ และแก้ไขโปรแกรมได้ง่าย เมื่อเกิดข้อผิดพลาด  ช่วยให้การดัดแปลง แก้ไข ทาได้อย่างสะดวกและรวดเร็ว  ช่วยให้ผู้อื่นสามารถศึกษาการทางานของโปรแกรมได้อย่างง่าย และรวดเร็วมากขึ้น  สามารถเรียนรู้และเข้าใจได้ง่าย เพื่อผังงานไม่ขึ้นอยู่กับภาษาคอมพิวเตอร์ภาษาใด ภาษาหนึ่งโดยเฉพาะ  ผังงานเป็นการสื่อความหมายด้วยภาพ ทาให้ง่ายและสะดวกในการพิจารณาถึง ลาดับขั้นตอนในการทางาน ต่างกับการบรรยายเป็นตัวอักษร เพราะอาจสื่อ ความหมายผิดไปได้  ในโปรแกรมที่ไม่ซับซ้อน สามารถใช้ผังงานตรวจสอบความถูกต้องของลาดับขั้นตอน ได้ง่ายถ้ามีข้อผิดพลาด สามารถแก้ไขได้สะดวกและรวดเร็ว  การเขียนโปรแกรมโดยพิจารณาจากผังงาน สามารถทางานง่ายและรวดเร็ว  การบารุงรักษาโปรแกรม เมื่อมีการเปลี่ยนแปลงแก้ไขโปรแกรม สามารถดูผังงานเพื่อ แก้ไขคาสั่งใน
  • 13. 1. โปรแกรม XMind โปรแกรมช่วยสร้างผังงาน โปรแกรม XMind เป็นโปรแกรมช่วยในการเขียนแผนผังความคิด (Mind Map) ที่ไม่ต้องเสียค่าลิขสิทธิ์โปรแกรมใดๆ ทั้งสิ้น โดยโปรแกรมมีคุณสมบัติเด่นคือ โปรแกรม XMIND สามารถสร้างภาพความคิด (Visualized Idea) ในรูปแบบ ต่างๆ ได้หลากหลายประกอบด้วย 1. การสร้างแผนที่ความคิด (Mind Map) เพื่อการจัดการความคิด 2. การสร้างแผนผังก้างปลา (Fishbone Diageam) เพื่อการวิเคราะห์ปัจจัยและปัญหา 3. การสร้างผังองค์กร (Organization Chart) ออกแบบผังองค์กรและงาน 4. การสร้างผังการตัดสินใจ (Decision Tree) เพื่อการวิเคราะห์ทางเลือก 5. การสร้างตารางความคิด (Idea spreadsheet) 6. อื่นๆ ตามจินตนาการ (Imagine map)
  • 14. 2. Dia โปรแกรมออกแบบผังงาน Dia หรือ Diagram เป็นโปรแกรมสาหรับออกแบบแผนผัง Diagram Flowchart ในกลุ่ม โอเพนซอร์ส (OSS) มีเครื่องมือให้ใช้งานหลากหลายรูปแบบ เช่น Flowchart, Map เป็น ต้น สามารถออกแบบแผนงานได้หลากหลาย เช่น ออกแบบผังห้องคอมพิวเตอร์, ออกแบบ ER-Diagram เป็นต้น ทาให้ Dia เป็นโปรแกรมออกแบบผังงานในระดับที่ดี (Diagramming tool)
  • 15. 3.โปรแกรม Edraw Mind Map Edraw Mind Map เป็นโปรแกรมสร้างแผนผังมโนทัศน์หรือแผนผังความคิด (Mind Map) โดยโปรแกรมมี ตัวอย่าง มีแม่แบบตลอดจนมีวัตถุ (Object) ในลักษณะต่างๆ ที่เอาไว้ใช้จัดการกับแผนความคิดที่หลากหลาย การใช้งานโปรแกรมมีความง่าย ผลงานที่ได้จึงมีความสวยงาม นอกจากนั้นผลงานเมื่อจัดทาเสร็จแล้วยัง สามารถนาออกไปเพื่อใช้งานได้หลากหลายรูปแบบครอบคลุมการทางานปัจจุบันได้เป็นอย่างดี
  • 16. 4. โปรแกรม FreeMind เป็นโปรแกรมสาหรับสร้าง Mind Map ที่ใช้สาหรับการจัดการ และ บริหารความคิดของสมองให้ เป็นไปอย่างมีระเบียบแบบแผน โปรแกรมเป็นซอฟต์แวร์โอเพนซอร์ส ได้ถูกพัฒนาขึ้นบนภาษาจาวา (Java) เพราะภาษาจาวามีความยืดหยุ่นสูง รองรับการท างานบนระบบปฏิบัติการได้หลากหลาย อาทิเช่น Windows, Mac OS และ LINUX ดังนั้น จึงต้องดาวน์โหลดตัวแปลภาษาจาวามาติดตั้ง ก่อน จึงจะสามารถทาการติดตั้ง FreeMind และใช้งาน FreeMind ได้อย่างมีประสิทธิภาพสูงที่สุด