สรุปบทที่8 การเขียนผังงาน
ผังงาน (flowchart) เป็นเครื่องมือแสดงขั้นตอนหรือกระบวนการทำงาน โดยใช้สัญลักษณ์ที่ป็นมาตรฐานเดียวกัน
รูปแบบผังงานมี 3 แบบคือ แบบเรียงลำดับ แบบมีเงื่อนไข
และแบบทำซ้ำ
เราสามารถเขียนผังงานโดยใช้โปรแกรมหรือเครื่องมือต่างๆช่วยในการออกแบบ ซึ่งมีผู้ผลิตโปรแกรมออกมาหลายค่ายทำให้ลดขั้นตอนและเวลาการทำงานลงไปได้มากยื่งขึ้น
แบบฝึกหัดบทที่ 8
การเขียนผังงาน
1. ผังงาน
(flowchart) คืออะไร
ตอบ
ผังงาน
(flowchart) เป็นเครื่องมือแสดงลำดับการทำงานด้วยภาพสัญลักษณ์ที่เป็นมาตรฐาน ทำให้มองเห็นการทำงาน ได้ชัดชัดเจน และนำไปเขียนโปรแกรมได้ง่ายขึ้น โดยลักษณะของผังงานมีหลายรูปแบบคือ แบบเรียงลำดับ แบบเงื่อนไข
และแบทำซ้ำ
ซึ่งแตกต่างกันไปตามลักษณะการทำงานนั้นๆ
2. อธิบายรูปแบบผังงานแบบเรียงลำดับ (sequence)
แบบมีเงื่อนไข (decision) และแบบ
(loop)
ตอบ. 1) การทำงานแบบตามลำดับ(Sequence) คือ การเขียนให้ทำงานจากบนลงล่าง เขียนคำสั่งเป็นบรรทัด และทำทีละบรรทัดจากบรรทัดบนสุดลงไปจนถึงบรรทัดล่างสุด สมมติให้มีการทำงาน
ตอบ. 1) การทำงานแบบตามลำดับ(Sequence) คือ การเขียนให้ทำงานจากบนลงล่าง เขียนคำสั่งเป็นบรรทัด และทำทีละบรรทัดจากบรรทัดบนสุดลงไปจนถึงบรรทัดล่างสุด สมมติให้มีการทำงาน
2) กระบวนการคือ
อ่านข้อมูล คำนวณ และพิมพ์ จะเขียนเป็นผังงาน(Flowchart) ในแบบตามลำดับได้
3) การเลือกกระทำตามเงื่อนไข(Decision)
คือ การเขียนโปรแกรมเพื่อนำค่าไปเลือกกระทำ
โดยปกติจะมีเหตุการณ์ให้ทำ 2 กระบวน การ
คือเงื่อนไขเป็นจริงจะกระทำกระบวนการหนึ่ง และเป็นเท็จจะกระทำอีกกระบวนการหนึ่ง
แต่ถ้าซับซ้อนมากขึ้น จะต้องใช้เงื่อนไขหลายชั้น เช่นการตัดเกรดนักศึกษา เป็นต้น
ตัวอย่างผังงานนี้ จะแสดงผลการเลือกอย่างง่าย
เพื่อกระทำกระบวนการเพียงกระบวนการเดียว
4) การทำซ้ำ
(Loop) คือ การทำกระบวนการหนึ่งหลายครั้ง
โดยมีเงื่อนไขในการควบคุม หมายถึงการทำซ้ำเป็นหลักการที่ทำความเข้าใจได้ยากกว่า 2
รูปแบบแรก เพราะการเขียนโปรแกรมแต่ละภาษา
จะไม่แสดงภาพอย่างชัดเจนเหมือนการเขียนผังงาน(Flowchart) ผู้เขียนโปรแกรมต้องจินตนาการ
ถึงรูปแบบการทำงาน และใช้คำสั่งควบคุมด้วยตนเอง
ตัวอย่างผังงานที่นำมาแสดงนี้เป็นการแสดงคำสั่งทำซ้ำ(do while) ซึ่งหมายถึงการทำซ้ำในขณะที่เป็นจริง
และเลิกการทำซ้ำเมื่อเงื่อนไขเป็นเท็จ
3. ขั้นตอนการทำงานซ้ำแบบ while…do
และ do…until ต่างกันอย่างไร จงอธิบาย
ตอบ. while...do เป็น โครงสร้างที่มีการทดสอบเงื่อนไขก่อน ถ้าเงื่อนไขเป็นจริงก็จะเข้ามาทำงานในกลุ่มคำสั่งที่ต้องทำซ้ำ ซึ่งเรียกว่าการเข้าลูป หลังจากนั้นก็จะย้อนกลับไปตรวจสอบเงื่อนไขใหม่อีก ถ้าเงื่อนไขยังคงเป็นจริงอยู่ ก็ยังคงต้องทำกลุ่มคำสั่งซ้ำหรือเข้าลูปต่อไปอีก จนกระทั่งเงื่อนไขเป็นเท็จ ก็จะออกจากลูปไปทำคำสั่งถัดไปที่อยู่ถัดจาก DO WHILE หรืออาจเป็นการจบการทำงาน
ตอบ. while...do เป็น โครงสร้างที่มีการทดสอบเงื่อนไขก่อน ถ้าเงื่อนไขเป็นจริงก็จะเข้ามาทำงานในกลุ่มคำสั่งที่ต้องทำซ้ำ ซึ่งเรียกว่าการเข้าลูป หลังจากนั้นก็จะย้อนกลับไปตรวจสอบเงื่อนไขใหม่อีก ถ้าเงื่อนไขยังคงเป็นจริงอยู่ ก็ยังคงต้องทำกลุ่มคำสั่งซ้ำหรือเข้าลูปต่อไปอีก จนกระทั่งเงื่อนไขเป็นเท็จ ก็จะออกจากลูปไปทำคำสั่งถัดไปที่อยู่ถัดจาก DO WHILE หรืออาจเป็นการจบการทำงาน
ส่วน do…until เป็นโครงสร้างการทำงานแบบทำงานซ้ำเช่นกัน
แต่มีการทำงานที่แตกต่างจาก DO WHILE คือจะมีการเข้าทำงานกลุ่มคำสั่งที่อยู่ภายในลูปก่อนอย่างน้อย
1 ครั้ง แล้วจึงจะไปทดสอบเงื่อนไข
ถ้าเงื่อนไขเป็นเท็จก็จะมีการเข้าทำกลุ่มคำสั่งที่ต้องทำซ้ำอีก
หลังจากนั้นก็จะย้อนกลับไปตรวจสอบเงื่อนไขใหม่อีก ถ้าเงื่อนไขยังคงเป็นเท็จอยู่ ก็ยังต้องทำกลุ่มคำสั่งซ้ำหรือเข้าลูปต่อไปอีก
จนกระทั่งเงื่อนไขเป็นจริง จึงจะออกจากลูปไปทำคำสั่งถัดจาก UNTIL หรืออาจเป็นการจบการทำงาน
4.จงบอกประโยชน์ของผังงาน
ตอบ. 1.ผังงานอธิบายด้วยภาพสัญญาลักษณ์ และเส้นชี้ทิศทาง ทำให้มองเห็นลำดับการทำงานของการทำงานชัดเจน และปฏิบัติตามได้ง่าย
2.เมื่อมีการทำงานที่ผิดพลาด จะทำให้มองเห็นข้อผิดพลาดได้ง่าย
โดยเฉพาะการเขียนโปรแกรมสามารถตรวจสอบและแก้ไขในขั้นตอนที่แก้ปัญหาได้
โดยไม่ต้องไล่หาความผิดพลาดตั้งแต่ต้น
3.สามารถนำผังงานไปใช้ได้กับการเขียนโปรแกรมคอมพิวเตอร์ได้ทุกภาษา เนื่องจากผังงานเป็นเครื่องมือที่อธิบายการทำงาน
ซึ่งผู้เขียนโปรแกรมจะสั่งให้คอมพิวเตอร์ปฏิบัติตามขั้นตอนนั้นด้วยภาษาคอมพิวเตอร์ที่แตกต่างกันไป
5.จงเขียนขั้นตอน( Algorithm) และวาดผนังงาน(Flowchart)
สำหรับการทำงานต่อไปนี้5.1)การยืมหนังสือในห้อสมุด
ตอบ
การยืม หนังสือที่เหลือ=จำนวนหนังสือที่มี -จำนวนที่ยืม แทนเป็นสมการA=B-N
จำนวนที่ยืม+หนังสือที่เหลือ=จำนวนหนังสือที่มี แทนเป็นสมการ N+A=B
5.2)ระบบไฟจราจร
5.3)การขึ้น/ลงลิฟท์
ตอบ
เมื่อค่าน้อยกว่าให้บวกเมื่อเท่ากันให้หยุดเมื่อค่ามากกว่าให้ลบเมื่อเท่ากันให้หยุด
ที่มา หนังสือ ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น