รูปแบบโครงสร้างการทำงาน

โครงสร้างผังงานการทำงานแบบลำดับ

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

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

ผังงานกับการทำงานแบบลำดับ

หลังจากที่ทำการหากระบวนการทำงานทั้งหมดของผังงาน ขั้นตอนต่อไปคือ การเขียนข้อความที่ใช้สำหรับอธิบายการทำงานที่เหมาะสมกับกระบวนการทำงาน ข้อความที่ใช้สำหรับอธิบายการทำงานของแต่ละสัญลักษณ์ของผังงาน สามารถเขียนได้ดังนี้

ตัวอย่างการเปลี่ยนจากผังงานเป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ

จากรูป มีกระบวนการทำงานทั้งหมด 5 กระบวนการ สามารถเขียนการอธิบายขั้นตอนวิธีการทำงานในลักษณะข้อความ ได้ดังนี้
1. เริ่มต้นการทำงาน 2. รับค่า Base และ High 3. คำนวณค่าของ Answer เท่ากับ 0.5*Base*High 4. แสดงค่าของ Answer 5. จบการทำงาน
ตัวอย่าง การเปลี่ยนจากผังงานเป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ
จากรูป มีกระบวนการทำงานทั้งหมด 5 กระบวนการ สามารถเขียนการอธิบายขั้นตอนวิธีการทำงานในลักษณะข้อความ ได้ดังนี้
1. เริ่มต้นการทำงาน 2. รับค่า Radian 3. คำนวณค่าของ Answer เท่ากับ 2*3.14*Radian 4. แสดงค่าของ Answer 5. จบการทำงาน
รหัสเทียมกับการทำงานแบบลำดับ หลังจากที่ทำการเขียนอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความจากผังงานเสร็จเรียบร้อยแล้ว ขั้นตอนต่อไปคือ การเปลี่ยนจากการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความเป็นรหัสเทียม โดยทำการเปลี่ยนจากขั้นตอนวิธีการทำงานหนึ่งการทำงานให้เป็นรหัสเทียมจำนวนหนึ่งรหัสเทียม การเขียนรหัสเทียมสำหรับการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ มีดังนี้

ตัวอย่าง การเปลี่ยนจากการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความเป็นรหัสเทียม

จากการอธิบายขั้นตอนวิธีการทำงานในลักษณะข้อความข้างต้น สามารถเขียนเป็นรหัสเทียม ได้ดังนี้
การอธิบายขั้นตอน……………………………………………………….. รหัสเทียม

1. เริ่มต้นการทำงาน ………………………………………………………………………..Begin

2. รับค่า Base และ High ………………………………………………………………….Read Base , High

3. คำนวณค่าของ Answer เท่ากับ 0.5*Base*High ……………………………Answer <- 0.5*Base*High

4. แสดงค่าของ Answer ………………………………………………………………..Write Answer

5. จบการทำงาน …………………………………………………………………………….End

ตัวอย่าง การเปลี่ยนจากการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความเป็นรหัสเทียม

จากการอธิบายขั้นตอนวิธีการทำงานในลักษณะข้อความข้างต้น สามารถเขียนเป็นรหัสเทียม ได้ดังนี้
การอธิบายขั้นตอน …………………………………………………………..รหัสเทียม
1. เริ่มต้นการทำงาน ……………………………………………………………………………Begin
2. รับค่า Radian ………………………………………………………………………………..Read Radian
3. คำนวณค่าของ Answer เท่ากับ 2*3.14*Radian ……………………………….Answer <- 2*3.14*Radian
4. แสดงค่าของ Answer ……………………………………………………………………..Write Answer
5. จบการทำงาน ………………………………………………………………………………..End
ตัวอย่าง การเปลี่ยนจากการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความเป็นรหัสเทียม

 โครงสร้างผังงานการทำงานแบบเลือกทำ หรือ แบบมีเงื่อนไข

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

  • การเขียนอธิบายขั้นตอนวิธีการทำงาน เริ่มต้นด้วยคำอธิบาย “ถ้า” ตามด้วยเงื่อนไขที่ใช้สำหรับการตัดสินใจที่อยู่ภายในสัญลักษณ์ผังงานการตัดสินใจ ถัดจากนั้นเป็นคำอธิบาย “แล้วทำ” จากนั้นเป็นการอธิบายขั้นตอนวิธีการทำงานทุกขั้นตอนการทำงานที่ต้องทำ สำหรับกรณีที่ผลการตรวจสอบเงื่อนไขเป็นจริง จากนั้นใช้คำอธิบายว่า “มิฉะนั้นแล้ว” ตามด้วยขั้นตอนวิธีการทำงานทุกขั้นตอนการทำงานที่ต้องการสำหรับกรณีที่เงื่อนไขเป็นเท็จ จากผังงานในรูป สามารถเขียนอธิบายขั้นตอนวิธีการทำงานได้ดังนี้
  • 1. ถ้า Condition แล้วทำ 1.1 Process 1 มิฉะนั้นแล้ว 1.2 Process 2

ตัวอย่างที่ 1 การเปลี่ยนจากผังงานเป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ

  • การเขียนอธิบายขั้นตอนวิธีการทำงานจากผังงาน สิ่งที่ต้องทำเป็นลำดับแรกคือ การแยกกระบวนการการทำงานทั้งหมดของผังงาน วิธีการแยกกระบวนการหรือขั้นตอนการทำงานแต่ละกระบวนการสามารถทำได้ดังนี้ คือ พิจารณาที่ทิศทางเข้าและทิศทางออกของขั้นตอนการทำงาน โดยทำทีละขั้นตอนหรือกระบวนการทำงานที่มีทิศทางเข้าและทิศทางออกเพียงอย่างละหนึ่งทิศทางเท่านั้น เช่นเดียวกับการทำงานแบบลำดับ
  • จากผังงานในรูป การทำงานสำหรับกรณีที่ผลการตรวจสอบเงื่อนไขเป็นจริง มีขั้นตอนการทำงานหรือกระบวนการทำงานที่ต้องทำจำนวน 2 กระบวนการทำงาน คือ รับค่าของตัวแปร A และ B อีกกระบวนการทำงานหนึ่งคือ การคำนวณค่าของ X เท่ากับ A + B สำหรับกรณีที่ผลการตรวจสอบเงื่อนไขเป็นเท็จ มีขั้นตอนการทำงานหรือกระบวนการทำงานที่ต้องทำจำนวน 2 กระบวนการทำงานเช่นกัน คือ การคำนวณค่าของ X เท่ากับ X + 10 และแสดงค่าของตัวแปร X
  • จากส่วนของผังงานที่มีโครงสร้างการทำงานแบบเลือกทำ สามารถทำการเขียนเป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ ได้ดังนี้
  • 1. ถ้า X > 5 แล้วทำ 1.1 รับค่า A , B 1.2 คำนวณค่าของ X เท่ากับ A + B มิฉะนั้นแล้ว 1.3 คำนวณค่าของ X เท่ากับ X +10 1.4 แสดงค่าของ X
  • การเขียนผังงานที่มีโครงสร้างผังงานแบบเลือกทำ ไม่จำเป็นต้องมีขั้นตอนการทำงานครบทั้ง 2 กรณีคือ กรณีที่เงื่อนไขเป็นจริง หรือ เป็นเท็จ บางครั้งอาจเขียนผังงานออกมาในลักษณะที่มีขั้นตอนการทำงานที่ต้องทำเพียงกรณีเดียว คือ กรณีที่ผลการตรวจสอบเงื่อนไขเป็นจริง ส่วนกรณีที่ผลการตรวจสอบเงื่อนไขเป็นเท็จ ไม่มีขั้นตอนการทำงานที่ต้องทำ
  • การเขียนอธิบายขั้นตอนวิธีการทำงานสำหรับผังงานที่มีลักษณะการทำงานดังกล่าว จะทำการตัดส่วนของคำอธิบาย “มิฉะนั้นแล้ว” ทิ้งไป วิธีการเขียนอธิบายขั้นตอนวิธีการทำงาน สามารถทำได้ดังนี้ คือ ขึ้นต้นด้วยคำอธิบาย “ถ้า” ตามด้วยเงื่อนไขที่ใช้พิจารณาการตัดสินใจ จากนั้นเขียนคำอธิบายว่า “แล้วทำ” ถัดจากนั้นเป็นลำดับขั้นคอนการทำงานที่ต้องทำกรณีที่ผลการตรวจสอบเงื่อนไขเป็นจริง ถ้าจบการอธิบายขั้นตอนวิธีการทำงานสำหรับการทำงานแบบเลือกทำในส่วนนั้น

ตัวอย่างที่ 2 การเปลี่ยนจากส่วนของผังงานให้เป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของ ข้อความ

  • จากส่วนของผังงานในตัวอย่างที่ 2 การทำงานหลังจากการพิจารณาเงื่อนไขที่ใช้สำหรับการตัดสินใจ กรณีที่ผลการตรวจสอบเงื่อนไขเป็นจริง มีขั้นตอนการทำงานหรือกระบวนการทำงานที่ต้องทำ จำนวน 2 การทำงาน คือ รับค่าของ A และ B ส่วนอีกการทำงานหนึ่งคือ การคำนวณค่าโดยให้ค่าของ X มีค่าเท่ากับ A2 + B2 ส่วนกรณีที่ผลการตรวจสอบเงื่อนไขเป็นเท็จ ไม่มีขั้นตอนการทำงานใดที่ต้องทำ สามารถทำการเขียนอธิบายขั้นตอนวิธีการทำงานได้ดังนี้ 1. ถ้า N > 0 แล้วทำ 1.1 รับค่าของ A และ B 1.2 คำนวณค่าของ X เท่ากับ A2 + B2

ตัวอย่างที่ 3 การเปลี่ยนจากส่วนของผังงานให้เป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ

  • จากผังงานในตัวอย่างที่ 3 เมื่อพิจารณาจำนวนกระบวนการทำงานหรือขั้นตอนการทำงานหลักของผังงาน มีกระบวนการทำงานทั้งหมด 5 การทำงาน โดยในขั้นตอนการทำงานที่ 3 เป็นลักษณะของโครงสร้างผังงานแบบเลือกทำ สามารถเขียนเป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความได้ดังนี้
  • 1. เริ่มต้นการทำงาน 2. รับค่าของ A และ B 3. ถ้า A มากกว่า B แล้วทำ 3.1 คำนวณค่าของ Num เท่ากับ A – B มิฉะนั้นแล้ว 3.2 คำนวณค่าของ Num เท่ากับ B – A 4. แสดงค่าของ Num 5. จบการทำงาน

ตัวอย่างที่ 4 จากผังงานการหาข้อมูลที่มากที่สุดระหว่างข้อมูล จำนวน 3 ข้อมูลที่รับเข้ามา จากนั้นทำการแสดงค่าที่มากที่สุด

  • จากผังงานในตัวอย่างที่ 4 สามารถแยกกระบวนการทำงานหรือขั้นตอนการทำงานหลักได้ 5 ขั้นตอนการทำงาน โดยขั้นตอนการทำงานที่ 3 เป็นโครงสร้างผังงานแบบเลือกทำ และมีโครงสร้างผังงานการเลือกทำซ้อนย่อยอยู่ภายใน สามารถเขียนเป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ ได้ดังนี้ 1. เริ่มต้น 2. รับค่า A , B , C 3. ถ้า A มากกว่า B แล้วทำ 3.1 ถ้า A มากกว่า C แล้วทำ 3.1.1 กำหนดค่าของ Max เท่ากับ A มิฉะนั้นแล้ว 3.1.2 กำหนดค่าของ Max เท่ากับ C มิฉะนั้นแล้ว 3.2 ถ้า B มากกว่า C แล้วทำ 3.2.1 กำหนดค่าของ Max เท่ากับ B มิฉะนั้นแล้ว 3.2.2 กำหนดค่าของ Max เท่ากับ C 4. แสดงค่าของ Max 5. จบการทำงาน

ตัวอย่างที่ 5 การเขียนอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความจากผังงาน

Photo Sharing and Video Hosting at Photobucket

  • จากผังงานสามารถแยกกระบวนการทำงานหรือขั้นตอนการทำงานหลักออกได้ทั้งหมด 5 การทำงาน ขั้นตอนการทำงานที่ 3 เป็นลักษณะโครงสร้างผังงานการเลือกทำ โดยการทำงานกรณีที่ผลการตรวจสอบเงื่อนไขเป็นจริง เป็นการทำงานแบบเลือกทำซ้อนย่อยอยู่ภายใน ส่วนกรณีที่ผลการตรวจสอบเงื่อนไขเป็นเท็จ เป็นการทำงานแบบลำดับซ้อนอยู่ภายใน สามารถเขียนเป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ ได้ดังนี้
  • 1. เริ่มต้นการทำงาน 2. รับค่า A , B 3. ถ้า A มากกว่า B แล้วทำ 3.1 ถ้า B มากกว่า 20 แล้วทำ 3.1.1 รับค่า A 3.1.2 คำนวณค่าของ B เท่ากับ B + 15 มิฉะนั้นแล้ว 3.1.3 รับค่า B 3.1.4 คำนวณค่าของ A เท่ากับ A + 10 3.2 คำนวณค่าของ A เท่ากับ A – B มิฉะนั้นแล้ว 3.3 คำนวณค่าของ Num เท่ากับ A + B 3.4 แสดงค่าของ Num 3.5 คำนวณค่าของ A เท่ากับ A + 10 4. แสดงค่าของ A , B 5. จบการทำงาน

รหัสเทียมกับการทำงานแบบเลือกทำ

  • รหัสเทียมสำหรับขั้นตอนวิธีการทำงานแบบเลือกทำ คือ รหัสเทียม “IF-THEN-ELSE” โดยใช้คำรหัสเทียมแทนข้อความอธิบาย ดังนี้
  • รหัสเทียม “IF” แทนข้อความอธิบายว่า “ถ้า”
  • รหัสเทียม “THEN” แทนข้อความอธิบายว่า “แล้วทำ”
  • รหัสเทียม “ELSE” แทนข้อความอธิบายว่า “มิฉะนั้นแล้ว”
  • รหัสเทียมสำหรับส่วนของขั้นตอนวิธีการทำงานที่ต้องทำ หลังจากการตรวจสอบเงื่อนไขใช้รหัสเทียมตามลักษณะการทำงานของขั้นตอนวิธีการทำงานนั้น คือ ถ้าเป็นการทำงานแบบลำดับ รหัสเทียมที่ใช้คือ รหัสเทียมสำหรับการทำงานแบบลำดับ ถ้าเป็นการทำงานแบบเลือกทำ รหัสเทียมที่ใช้คือ รหัสเทียมสำหรับการทำงานแบบเลือกทำ
  • การเขียนรหัสเทียมที่เป็นรหัสเทียมของการทำงานย่อย ภายในการทำงานแบบเลือกทำ จะใช้ย่อหน้าช่วยเพื่อให้เห็นชัดเจนว่า เป็นรหัสเทียมที่เป็นการทำงานย่อยของรหัสเทียมใด
    Photo Sharing and Video Hosting at Photobucket
  • กรณีที่เขียนอธิบายขั้นตอนวิธีการทำงานไม่มีส่วนของคำอธิบาย “มิฉะนั้นแล้ว” การเขียนรหัสเทียมสำหรับการทำงานในกรณีนี้ จะไม่มีส่วนของรหัสเทียม “ELSE” จากการอธิบายขั้นตอนวิธีการทำงาน ในลักษณะของข้อความต่อไปนี้
Photo Sharing and Video Hosting at Photobucket

ตัวอย่างที่ 6 การเขียนรหัสเทียมจากการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ

ตัวอย่างที่ 7 การเขียนรหัสเทียมจากการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ

Photo Sharing and Video Hosting at Photobucket

ตัวอย่างที่ 8 การเขียนรหัสเทียมจากการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ

Photo Sharing and Video Hosting at Photobucket

ตัวอย่างที่ 9 ร้านจำหน่ายเครื่องใช้ไฟฟ้าแห่งหนึ่ง มีวิธีการให้ลูกค้าเลือกชำระเงินค่าสินค้าอยู่ 2 วิธีคือ
1. ซื้อสินค้าด้วยเงินสด ทางร้านค้าจะมีส่วนลดให้ 3% จากราคาสินค้า
2. ซื้อแบบผ่อนชำระ โดยทางร้านค้าจะคิดดอกเบี้ยอัตรา 1.5% ต่อเดือน โดยให้ลูกค้าเลือกจำนวนเดือนที่ต้องการจะผ่อนชำระ
ข้อมูลเข้า คือ ราคาสินค้า และวิธีการที่ลูกค้าต้องการเลือกซื้อสินค้า ถ้าลูกค้าต้องการซื้อด้วยวิธีที่ 1
ข้อมูลออกคือ ราคาสินค้าที่คิดส่วนลดเรียบร้อยแล้ว ถ้าเลือกวิธีที่ 2 ข้อมูลออกคือ จำนวนเงินที่ลูกค้าต้องผ่อนชำระเป็นรายเดือน
เมื่อ ราคาสินค้าคือ Price วิธีการผ่อนชำระคือ Choice จำนวนเดือนคือ Month จำนวนเงินที่ต้องจ่ายคือ Payment

Photo Sharing and Video Hosting at Photobucket

สามารถเขียนเป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความได้ดังนี้

Photo Sharing and Video Hosting at Photobucket

อ้างอิง

http://sudruadee.blogspot.com/2007/06/6.html

        

การเขียนผังงาน

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

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

ผังงานโปรแกรม  การเขียนผังโปรแกรมจะประกอบไปด้วยการใช้สัญลักษณ์มาตรฐานต่าง ๆ ที่เรียกว่า สัญลักษณ์ ANSI ( American National Standards Institute ) ในการสร้างผังงาน ดังตัวอย่างที่แสดงในรูปต่อไปนี้

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

รูปที่1 แสดง สัญลักษณ์ในการเขียนผังงานโปรแกรม


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


รูปที่ 2 แสดงการเขียนผังงานที่แสดงขั้นตอนการส่งจดหมาย

ตัวอย่างที่ 2 เขียนผังงานแสดงวิธีการรับประทานยา ที่แบ่งขนาดรับประทานตามอายุของผู้ทานดังนี้ • อายุมากกว่า 10 ปี รับประทานครั้งละ 2 ช้อนชา • อายุมากกว่า 3 ปี ถึง 10 ปี รับประทานครั้งละ 1 ช้อนชา • อายุมากกว่า 1 ปี ถึง 3 ปี รับประทานครั้งละ 1/2 ช้อนชา • แรกเกิดถึง 1 ปี ห้ามรับประทาน


รูปที่ 3 แสดงการเขียนผังงานแสดงวิธีการรับประทานยา


โครงสร้างการทำงานแบบมีการเลือก ( Selection ) เป็นโครงสร้างที่ใช้การตรวจสอบเงื่อนไขเพื่อการทำงานอย่างใดอย่างหนึ่ง โดยโครงสร้างแบบนี้จะมีอยู่ด้วยกัน 2 รูปแบบ คือ IF – THEN – ELSE และ IF – THEN



รูปที่4 แสดงโครงสร้างผังงานแบบมีการเลือก

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

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

ตัวอย่าง 3 การเขียนผังงานอ่านค่าข้อมูลเข้ามาเก็บไว้ในตัวแปร A และ B แล้วทำการเปรียบเทียบในตัวแปรทั้งสอง โดยมีเงื่อนไขดังนี้ • ถ้า A มากกว่า B ให้คำนวณหาค่า A – B และเก็บผลลัพธ์ไว้ในตัวแปรชื่อ RESULT • ถ้า A น้อยกว่าหรือเท่ากับ B ให้คำนวณหาค่า A + B และเก็บผลลัพธ์ไว้ในตัวแปรชื่อ RESULT


รูปที่ 3 แสดงการเขียนผังงานอ่านค่าข้อมูล

ตัวอย่าง 4 การเขียนผังงานเปรียบเทียบค่าข้อมูลที่เก็บอยู่ในตัวแปร X โดยมีเงื่อนไขดังนี้ • ถ้า X > 0 ให้พิมพ์คำว่า ” POSITIVE NUMBER ” • ถ้า X < 0 ให้พิมพ์คำว่า ” NEGATIVE NUMBER ” • ถ้า X = 0 ให้พิมพ์คำว่า ” ZERO NUMBER “


รูปที่ 4 แสดงการเขียนผังงานเปรียบเทียบค่าข้อมูล


โครงสร้างการทำงานแบบมีการทำงานซ้ำ เป็นโครงสร้างที่มีการประมวลผลกลุ่มคำสั่งซ้ำหลายครั้ง ตามลักษณะเงื่อนไขที่กำหนด อาจเรียก การทำงานซ้ำแบบนี้ได้อีกแบบว่า การวนลูป ( Looping ) โครงสร้างแบบการทำงานซ้ำนี้จะมีอยู่ 2 ประเภท คือ • DO WHILE • DO UNTIL

DO WHILE เป็นโครงสร้างที่มีการทดสอบเงื่อนไขก่อน ถ้าเงื่อนไขเป็นจริงก็จะเข้ามาทำงานในกลุ่มคำสั่งที่ต้องทำซ้ำ ซึ่งเรียกว่าการเข้าลูป หลังจากนั้นก็จะย้อนกลับไปตรวจสอบเงื่อนไขใหม่อีก ถ้าเงื่อนไขยังคงเป็นจริงอยู่ ก็ยังคงต้องทำกลุ่มคำสั่งซ้ำหรือเข้าลูปต่อไปอีก จนกระทั่งเงื่อนไขเป็นเท็จ ก็จะออกจากลูปไปทำคำสั่งถัดไปที่อยู่ถัดจาก DO WHILE หรืออาจเป็นการจบการทำงาน


แสดงโครงสร้างการทำงานซ้ำแบบ DO WHILE

DO UNTIL เป็นโครงสร้างการทำงานแบบทำงานซ้ำเช่นกัน แต่มีการทำงานที่แตกต่างจาก DO WHILE คือจะมีการเข้าทำงานกลุ่มคำสั่งที่อยู่ภายในลูปก่อนอย่างน้อย 1 ครั้ง แล้วจึงจะไปทดสอบเงื่อนไข ถ้าเงื่อนไขเป็นเท็จก็จะมีการเข้าทำกลุ่มคำสั่งที่ต้องทำซ้ำอีก หลังจากนั้นก็จะย้อนกลับไปตรวจสอบเงื่อนไขใหม่อีก ถ้าเงื่อนไขยังคงเป็นเท็จอยู่ ก็ยังต้องทำกลุ่มคำสั่งซ้ำหรือเข้าลูปต่อไปอีก จนกระทั่งเงื่อนไขเป็นจริง จึงจะออกจากลูปไปทำคำสั่งถัดจาก UNTIL หรืออาจเป็นการจบการทำงาน


แสดงโครงสร้างการทำงานซ้ำแบบ DO UNTIL

สรุปข้อแตกต่างระหว่าง DO WHILE และ DO UNTIL มีดังนี้ 1. DO WHILE ในการทำงานครั้งแรกจะต้องมีการตรวจสอบเงื่อนไขก่อนทุกครั้ง ก่อนที่จะมีการเข้ลูปการทำงาน 2. DO UNTIL การทำงานครั้งแรกจะยังไม่มีการตรวจสอบเงื่อนไข แต่จะเข้าไปทำงานในลูปก่อนอย่างน้อย 1 ครั้งแล้วจึงจะไปตรวจสอบเงื่อนไข 3. DO WHILE จะมีการเข้าไปทำงานในลูปก็ต่อเมื่อตรวจสอบเงื่อนไขแล้วพบว่า เงื่อนไขเป็นจริง แต่เมื่อพบว่าเงื่อนไขเป็นเท็จ ก็จะออกจากลูปทันที 4. DO UNTIL จะมีการเข้าไปทำงานในลูปก็ต่อเมื่อตรวจสอบเงื่อนไขแล้วพบว่า เงื่อนไขเป็นเท็จ แต่เมื่อพบว่าเงื่อนไขเป็นจริง ก็จะออกจากลูปทันที

ตัวอย่าง 5 จงเขียนผังงานแสดงการเพิ่มของข้อมูลตัวเลขที่เก็บอย่ในหน่วยความจำที่แอดเดรส 1 โดยที่ค่าเริ่มต้นจาก 0 ให้ทำการเพิ่มค่าทีละ 1 เรื่อยไปจนกระทั่ง J มีค่าข้อมูลมากกว่า 100 จึงหยุดการทำงาน
ตัวอย่างนี้ เป็นตัวอย่างการทำงานแบบทำซ้ำ ซึ่งจะสามารถแสดงการเขียนได้ทั้งแบบ DO WHILE และ DO UNTIL ดังนี้


อ้างอิง

http://www.bcoms.net/system_analysis/lesson63.asp

ขั้นตอนการทำงานและรหัสจำลอง 

ขั้นตอนการพัฒนาโปรแกรมภาษาซี

1.ขั้นตอนการพัฒนาโปรแกรมภาษา C

การพัฒนาโปรแกรมภาษา C มีขั้นตอนดังนี้ 1) เขียนโปรแกรมต้นฉบับ (source program) ด้วยภาษา C ใช้โปรแกรม Turbo C/ C++ เพื่อเขียนโปรแกรมต้นฉบับด้วยภาษา C จากนั้นบันทึกโปรแกรมพร้อมกับตั้งชื่อแฟ้มไว้ แฟ้มที่ได้จะมีนามสกุล *.c หรือ *.cpp เช่น simple.c หรือ simple.cpp เป็นต้น นอกจากนี้ยังสามารถใช้โปรแกรม Turbo C/C++ เขียนโปรแกรมภาษา C++ ได้อีกด้วย 2) แปลโปรแกรมภาษา C ไปเป็นโปรแกรมภาษาเครื่อง (object program) ใช้คำสั่ง compile เพื่อแปลโปรแกรมภาษา C ไปเป็นโปรแกรมภาษาเครื่อง แฟ้มที่ได้จะมีนามสกุล *.obj ซึ่งในขั้นตอนนี้โปรแกรมต้นฉบับอาจเกิดความผิดพลาดทางไวยกรณ์ภาษา (syntax error) ขึ้นได้ จึงต้องย้อนกลับไปแก้ไขโปรแกรมต้นฉบับในข้อ 1. ให้ถูกต้องเสียก่อน 3) เชื่อมโยง (link) โปรแกรมภาษาเครื่องเข้ากับ library function ของภาษา C จะได้เป็น execute program โดยใช้คำสั่ง link แฟ้มที่ได้จะมีนามสกุล *.exe 4) สั่งให้ execute program แสดงผลลัพธ์ออกมา โดยใช้คำสั่ง run

ในขั้นตอนนี้ผู้เขียนโปรแกรม ควรตรวจสอบผลลัพธ์ที่ได้จากโปรแกรมว่าตรงกับความต้องการของเราหรือไม่ ถ้าผลลัพธ์ที่ได้ไม่ตรงกับความต้องการให้กลับไปแก้ไขโปรแกรมต้นฉบับในข้อ 1. เสร็จแล้วทำขั้นตอน ข้อ 2. ถึง ข้อ 4. ซ้ำอีก ทำซ้ำเช่นนี้จนกว่าจะได้ผลลัพธ์ที่ต้องการ

หมายเหตุ ในทางปฏิบัติ การ compile/ link/ run ในโปรแกรม Turbo C/C++ สามารถทำให้พร้อมกันทั้ง 3 ขั้นตอน คือใช้คำสั่ง Ctrl + F9 (กดปุ่ม Ctrl และปุ่ม F9 พร้อมกัน) โดยสรุปเราสามารถเขียนผังงานแสดงขั้นตอนการพัฒนาโปรแกรมภาษา C ได้ดังนี้

การเขียน Pseudocode

ซูโดโค้ด (Pseudocode) หรือ ในภาษาไทย เรียกว่า รหัสจำลอง หรือ รหัสเทียม คือ การจำลองการเขียนโปรแกรม โดยเขียนคำสั่งเป็นภาษาอะไรก็ได้ เช่น ไทย หรือ อังกฤษ ฯลฯ ที่ไม่ใช่ภาษาคอมพิวเตอร์ขั้นสูงอย่าง ภาษา C หรือ Java ซูโดโค้ดนี้จะไม่ขึ้นกับภาษาคอมพิวเตอร์ใดๆ โดยเฉพาะ ใช้อธิบายการทำงานของโปรแกรม เนื่องจากสื่อด้วยภาษาง่ายๆ อย่าง ไทย, อังกฤษ ทำให้ผู้อ่านเข้าใจได้ง่าย และตรงกัน โดยปกติแล้วมักใช้ภาษาอังกฤษ เนื่องจากสามารถแปลเป็นภาษาคอมพิวเตอร์ได้ง่าย

หลักในการเขียน Pseudocode

1. คำสั่งที่เขียนใช้ภาษาที่เข้าใจง่าย ไม่ต้องคำนึงถึงภาษาคอมพิวเตอร์ 2. ในหนึ่งบรรทัด ให้มีเพียงหนึ่งคำสั่งเท่านั้น 3. ใช้ย่อหน้าในการแสดงกลุ่มของคำสั่ง ที่เป็นคำสั่งย่อยในคำสั่งพวกเงื่อนไข เช่น if-else, while, for ฯลฯ 4. ในการเขียนแต่ละคำสั่งให้เรียงการทำงานจากบนลงล่าง และมีทางออกหรือจุดสิ้นสุดเพียงจุดเดียว 5. กลุ่มคำสั่งอาจจะเขียนรวมกันเป็นโมดุล และเวลาเรียกใช้ก็เรียกใช้ผ่านชื่อโมดุล (คล้ายกับการเรียกใช้ฟังก์ชัน)

ตัวอย่างที่ 1 จงเขียน Pseudocode จากโปรแกรมหาผลรวมของตัวเลข 2 ค่า แล้วแสดงผลรวมออกมาทางหน้าจอ 1. read x , y 2. calculate sum = x + y 3. print sum

ตัวอย่างที่ 2 จงเขียน Pseudocode จากโปรแกรมรับตัวเลข 1 ค่าแล้วตรวจสอบว่าเป็นเลขคู่หรือเลขคี่ 1. read x 2. if x % 2 = 0 <– ตรวจสอบว่าเศษจากการหาร x ด้วย 2 เท่ากับ 0 หรือไม่ 1. then 1. print “even” 2. else 1. print “odd”

ตัวอย่างที่ 3 จงเขียน Pseudocode จากโปรแกรมหาค่าเฉลี่ยของตัวเลข 10 ค่า แล้วแสดงค่าเฉลี่ยออกมาทางหน้าจอ 1. for i = 1 to 10 <– เป็นคำสั่งวนรอบจำนวน 10 รอบ 1. read num 2. calculate sum = sum + num 2. calculate mean = sum / 10 3. print mean

ตัวอย่างที่ 4 จงเขียน Pseudocode จากโปรแกรมหาค่าเฉลี่ยของตัวเลข n ค่า แล้วแสดงค่าเฉลี่ยออกมาทางหน้าจอ 1. read n 2. for i = 1 to n <– เป็นคำสั่งวนรอบจำนวน n รอบ 1. read num 2. calculate sum = sum + num 3. calculate mean = sum / n 4. print mean

ตัวอย่างที่ 5 จงเขียน Pseudocode จากโปรแกรมเปรียบเทียบตัวเลข 2 ค่า แล้วแสดงความสัมพันธ์ออกมา 1. read x , y 2. if x > y 1. then 1. print “x > y” 2. else if x < y 1. then 1. print “x < y” 2. else 1. print “x = y”

รหัสจำลอง

                      รหัสจำ ลอง (Pseudo code) เป็นเครื่องมือที่ช่วยในการแก้ปัญหาการเขียนจะเป็นคำ อธิบายที่มีโครงสร้างที่ชัด เจน ไม่ขึ้นกับภาษาใดภาษาหนึ่ง แต่สามารถเปลี่ยนเป็นภาษาทางคอมพิวเตอร์ได้ง่าย จะมีการใช้ข้อความที่เป็นภาษาอังกฤษหรือภาษาไทยก็ได้ ในการแสดงขั้นตอนการแก้ ปัญหา แต่จะมีการใช้คำ เฉพาะ(reserve words) ที่มีอยู่ในภาษาโปรแกรมมาช่วยในการ เขียน โครงของรหัสจำ ลองจึงมีส่วนที่คล้ายกับการเขียนโปรแกรมมาก ดังนั้นรหัส จำ ลองจึงเป็นเครื่องมืออีกแบบที่นิยมใช้กันมากในการออกแบบโปรแกรม
ข้อตกลงในการเขียนรหัสจำ ลอง
1. ในการอธิบายการทำ งานใช้คำ สั่งซึ่งเป็นคำ กริยาในภาษาอังกฤษ เช่น MOVE INITIALIZE READ WRITE SUBTRACT ADD DISPLAY COMPUTE เป็นต้น
2. คำ สั่งหลาย ๆ คำ สั่งรวมเรียกว่า มอดูล หรือ กระบวนการ กำ หนดชื่อให้มอดูล นั้น แล้วใช้ do นำ หน้า
3. การทำ งานใด ๆ จะเขียนคำ สั่งเป็นบรรทัด ๆ ไป เรียงเป็นลำ ดับ Statement-1 Statement-2 . . . . Statement-n
4. การทำ งานตามเงื่อนไข เป็นการทำ งานที่ เมื่อทดสอบเงื่อนไขแล้ว จะเลือก ทำ ทางใดทางหนึ่งเท่านั้น เช่น IF Condition      THEN           Statement-1      ELSE           Statement-2      ENDIF
อธิบายคำ สั่งได้ดังนี้ คำ สั่ง IF เป็นการตรวจสอบเงื่อนไข หากเงื่อนไขเป็นจริง จะทำ คำ สั่งที่ 1 แต่ หากเงื่อนไขเป็นเท็จ จะทำ คำ สั่งที่ 2
5. การวนรอบ เป็นการวนรอบซํ้าตามจำ นวนที่ต้องการ ซึ่งการวนรอบมีหลาย ลักษณะดังนี้
– REPEAT FOR วนรอบซํ้า เท่าจำ นวนรอบที่ระบุ คือรู้จำ นวนรอบที่ แน่นอน      REPEAT FOR n TIMES           Statement-1           Statement-2      ENDFOR
อธิบายคำ สั่งได้ดังนี้ คำ สั่ง FOR เป็นการวนรอบซํ้าเป็นจำ นวน n ครั้ง เพื่อทำ คำ สั่งที่ 1 คำ สั่งที่ 2
– REPEAT UNTIL วนรอบซํ้า จนกระทั่ง เงื่อนไขที่กำ หนดเป็นจริง จึง      เสร็จสิ้น           REPEAT                Statement-1                Statement-2           UNTIL condition
อธิบายคำ สั่งได้ดังนี้ คำ สั่ง REPART UNTIL เป็นการวนรอบซํ้าในขณะที่เงื่อนไขเป็นเท็จ เพื่อทำ คำ สั่งที่ 1 คำ สั่งที่ 2 แต่หากเงื่อนไขเป็นจริง ก็จบการวนซํ้า
– REPEAT WHILE วนรอบซํ้าในขณะที่เงื่อนเป็นจริง
REPEAT WHILE condition           Statement-1           Statement-2      END REPEAT
อธิบายคำ สั่งได้ดังนี้ คำ สั่ง REPART WHILE เป็นการวนรอบซํ้าในขณะที่เงื่อนไขเป็นจริงเพื่อทำ คำ สั่งที่ 1 คำ สั่งที่ 2 แต่หากเงื่อนไขเป็นเท็จก็จบการวนซํ้า ตัวอย่างการเขียน รหัสจำ ลอง 1) ให้นับจำ นวนนักศึกษาที่อายุ มากกว่า หรือเท่ากับ 18 ปี และจำ นวนนัก ศึกษาที่อายุ น้อยกว่า 18 ปี
IF student’s age >= 18          THEN AdultCounter = AdultCounter + 1          ELSE JuniorCounter = JuniorCounter + 1 ENDIF
2) ให้นับจำ นวนพนักงานหญิง และพนักงานชาย โดยนับจากข้อมูลรหัสเพศ และ ตรวจ
สอบด้วยว่าข้อมูลรหัสเพศที่ไม่ถูกต้องมีกี่คน
IF employee’s sex is female      THEN FemaleCounter = FemaleCounter + 1   ELSE IF employee’s sex is male      THEN MaleCounter = MaleCounter + 1 ELSE ErrorCounter = ErrorCounter + 1 ENDIF ENDIF
3) ให้นับจำ นวนชั่วโมงการทำ งานที่เกิน 40 ชั่วโมง IF hour worked > 40 THEN OverTimeCounter = OverTimeCounter + 1 ENDIF 4) จงเขียนรหัสจำ ลองหาพื้นที่ของวงกลม กำ หนดให้ สูตรพื้นที่วงกลม = 3.1415 x รัศมี x รัศมี      Area of cycle      Read radius      Compute Area = 3.1415 * radius * radius      Display Area      End
5) ทำ การวนรอบเพื่อพิมพ์รายชื่อลูกค้าจำ นวน 5 คน Print Heading Initialize Counter to 1 Repeat Read CustName Print CustName Increment Counter by 1 Until Counter equals 5 End
6) ทำ การวนรอบเพื่อพิมพ์ชื่อและที่อยู่ของลูกค้าจนหมดแฟ้มข้อมูล Print Heading Read CustRecord Repeat While not EndOfFile Print CustName , CustAddress Read CustRecord EndRepeat

 อ้างอิง

http://nipapon.wordpress.com/2012/08/24/%E0%B8%82%E0%B8%B1%E0%B9%89%E0%B8%99%E0%B8%95%E0%B8%AD%E0%B8%99%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%97%E0%B8%B3%E0%B8%87%E0%B8%B2%E0%B8%99%E0%B9%81%E0%B8%A5%E0%B8%B0%E0%B8%8B%E0%B8%B9%E0%B9%82%E0%B8%94/