การกำหนดและวิเคราะห์ปัญหา ตัวอย่าง

การวิเคราะห์ปัญหาและความต้องการ

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

ตัวอย่างโจทย์ปัญหา

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

หมายเหตุ เป็นเพียงสถานการณ์จำลองเพื่อเรียนรู้การเขียนโปรแกรม ความจริงอาจไม่จำเป็นต้องเขียนโปรแกรมแก้ปัญหานี้ก็ได้

ขั้นตอนการวิเคราะห์

            วิธีการวิเคราะห์ปัญหาและความต้องการของโปรแกรม ให้นักเรียนแบ่งออกเป็นขั้นตอนย่อย ๆ ดังนี้

            1.วิเคราะห์ความต้องการ คือการพิจารณาจากปัญหาดังกล่าวว่ามีความต้องการอย่างไรบ้าง

               ตอบ: โจทย์ต้องการให้เขียนโปรแกรมเพื่อหาราคาทุน และราคาขายต่อที่บวกกำไรเพิ่มจากราคาทุนอีกร้อยละ 20

            2.วิเคราะห์ข้อมูลนำออก (Output) คือการพิจารณาว่าโปรแกรมจะต้องแสดงผลลัพธ์อะไรบ้าง

               ตอบ: แสดงราคาทุน และ ราคาขายต่อชิ้น

            3.วิเคราะห์วิธีการประมวลผล (Process) คือการพิจารณาว่า จะต้องดำเนินการอย่างไรจึงจะได้มาซึ่งผลลัพธ์ หรือจะต้องใช้วิธีการหรือสูตรสมการอย่างไรจึงจะหาผลลัพธ์ได้ถูกต้อง

             ตอบ:                     

ขั้นที่ 1 ต้องทราบราคาซื้อต่อลัง และจำนวนชิ้นของสินค้าต่อลัง

ขั้นที่ 2 นำราคาซื้อต่อลังมาหารด้วยจำนวนชิ้นของสินค้าต่อลังเพื่อหาราคาทุนต่อชิ้น โดยใช้สูตร

ราคาทุนต่อชิ้น = ราคาซื้อต่อลัง / จำนวนชิ้นต่อลัง

ขั้นที่ 3 นำราคาทุนต่อชิ้นมาหาราคาขายต่อโดยบวกกำไรเพิ่มร้อยละ 20 โดยใช้สูตร

                              ราคาขายต่อชิ้น = ราคาทุนต่อชิ้น + (ราคาทุนต่อชิ้น x 20 / 100)

                         หรือ ราคาขายต่อชิ้น = ราคาทุนต่อชิ้น + (ราคาทุนต่อชิ้น x 0.20) 

                4.การวิเคราะห์ข้อมูลนำเข้า (Input) คือการนำสูตรสมการที่วิเคราะห์ได้ในข้อที่ 3 ที่ผ่านมาพิจารณาว่ามีข้อมูลอะไรบ้างที่เราจะต้องนำเข้าไปแทนค่าในสูตรเพื่อให้ได้มาซึ่งผลลัพธ์หรือข้อมูลนำออก

                ตอบ:

                                1.ราคาซื้อต่อลัง

                                2.จำนวนชิ้นต่อลัง

                5.การวิเคราะห์ตัวแปร คือการพิจารณาข้อมูลในข้อที่ 2-4 ว่ามีข้อมูลอะไรบ้างที่จะต้องกำหนดเป็นตัวแปรเพื่อจัดเก็บข้อมูล โดยตัวแปรนั้นเป็นคำในภาษาอังกฤษและต้องเป็นคำที่มีความหมายตรงกันกับข้อมูลที่ต้องการจัดเก็บ

                ตอบ:

                1. price1    ใช้แทน ราคาซื้อต่อลัง       เป็นข้อมูลชนิด เลขจำนวนเต็ม (int)

                2. quantity ใช้แทน จำนวนชิ้นต่อลัง     เป็นข้อมูลชนิด เลขจำนวนเต็ม (int)

                3. price2    ใช้แทน ราคาทุนต่อชิ้น       เป็นข้อมูลชนิด เลขทศนิยม(double)

                4. price3    ใช้แทน ราคาขายต่อชิ้น     เป็นข้อมูลชนิด เลขทศนิยม (double)

จากนั้นเราจะนำผลการวิเคราะห์ไปออกแบบโปรแกรมในลำดับถัดไป