How to programming..!? – Part 1 : Analysis

comprogramhead2

 

 

สาส์นจาก..จอมมารน้อยผู้น่ารัก

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

***ต้องลงมือทำ ฝึกฝนบ่อยๆ เขียนเยอะๆ ทำเยอะๆ แล้วจะคล่องและเข้าใจมากขึ้นเอง หากไม่ลงมือทำ ก็ไม่มีทางรู้ได้หรอกว่า..เราทำได้ ^^*****

—————————————————————————————————————————————————

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

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

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

1. แกะซองมาม่าออก และฉีกฝาออกครึ่งหนึ่ง

2. เอาซ้อมที่แถมฟรีและซองเครื่องปรุงออก

3. ฉีกซองเครื่องปรุงที่เอาออกมาเทใส่ถ้วย

4. กดน้ำร้อนใส่ถ้วย แล้วปิดฝา รอ 3 นาที

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

ตัวอย่างเช่น หากว่าเรามีตัวแปรอยู่ 2 ตัว โดยให้ a = 4 และ b = 5 ให้หาผลลัพธ์ออกมาว่า a+b ได้เท่าไหร่ แล้วเราจะทำยังไงหล่ะ ก่อนอื่นเลย

1. เราก็ต้องกำหนดขึ้นมาก่อนว่า a = 4 และ b = 5 //สมมติว่า ครูบอกกับนักเรียนว่ามี a กับ b อยู่ แล้วให้นักเรียนหาผลลัพธ์ของ a+b แน่นอนว่า จะหาไงหล่ะ อ้าวว a เท่ากับเท่าไหร่และ b เท่ากับเท่าไหร่ ดังนั้นเราจึงต้องกำหนดไว้ก่อนไงหล่ะ ว่า a มีค่าเท่าไหร่ และ b มีค่าเท่าไหร่นั่นเอง

2. หลังจากนั้น ก็กำหนดตัวแปรเพิ่มขึ้นมาอีกตัวหนึ่ง คือ result โดยให้ result = a+b // สมมติว่า เราให้ชาม A เก็บกรด และชาม B เก็บเบส เราต้องการเอากรดกับเบสมาผสมกัน เราก็ต้องมีชามเพิ่มขึ้นอีกใบ โดยอาจเป็นชาม result แล้วเอาสิ่งที่อยู่ในชาม A กับ ชาม B เทใส่รวมกับเก็บไว้ในชาม result ชามresult นี่แหละ ก็คือผลลัพธ์ที่เราต้องการ ก็เปรียบเหมือนกับ เอาค่าของ a+b ไปเก็บไว้ใน result นั่นเองหล่ะ

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

การเขียนFlowchartเนี้ย เริ่มต้นอ่ะ อาจจะเริ่มจากการเขียนเป็นข้อความแล้วใช้ลูกศรชี้ เพื่อฝึกเรียบเรียงลำดับความคิดก่อนนะฮ่ะ หลักจากนั้นก็ลองทำความเข้าใจกับสิ่งที่เราเขียนขึ้นมาว่า ส่วนไหนเป็นส่วนที่ต้องเอาไปทำการต่างๆเอง หรือเป็นสิ่งที่ต้องรับเข้าใหม่ หรือส่วนไหนเป็นส่วนที่ต้องเอาไปใช้แสดงผล

  สัญลักษณ์Flowchart พื้นฐานที่ควรรู้นะฮะ 

flowchart

ตัวอย่างการเรียบเรียงลำดับความคิดนะฮะ โดยจะอิงจากโจทย์ก่อนหน้าคือ กำหนดตัวแปร 2 ตัว คือ a = 4 และ b = 5 แล้วหาผลลัพธ์ออกมา

ซึ่งก็จะได้เป็น Start   ->   define a=4 , b =5   ->   define result = a+b   ->   output value of result   ->   End  นี่เป็นเพียงการจัดความคิดให้เป็นระบบ เป็นขั้นตอนก่อนนะฮ่ะ ไม่ใช่วิธีที่ถูกต้องอย่างเป็นทางการ หลักจากนั้นให้ค่อยๆปรับความคิดเหล่านี้เป็นสัญลักษณ์ทาง Flowchart ฮะ

aplusbFlow

การเขียนFlowchartทุกครั้ง ต้องมีจุดเริ่มต้นและสิ้นสุดเสมอ จะเห็นว่า สัญลักษณ์ตัวที่4 จะแตกต่างจากตัวอื่น เพราะ เราต้องการให้แสดงค่า result ออกมา ซึ่งใช้สัญลักษณ์รูป Display เพื่อการสื่อว่า เราต้องการแสดงผลค่า result ออกทางหน้าจอนั่นเอง ส่วนสัญลักษณ์ตัวที่ 2 และ 3 นั่น หมายความว่า ให้ประมวลผลหรือทำงานนั่นเอง

 

 

จอมมารน้อย

ก็แค่จอมมารตัวน้อยที่น่ารักที่สุดที่อยากพัฒนาการเขียนโปรแกรมเพื่อสันติสุขของชาวโลก..เท่านั้นเอง >w<

ใส่ความเห็น