วันจันทร์ที่ 8 กรกฎาคม พ.ศ. 2556

การถ่ายทอดความคิดในการแก้ไขปัญหาด้วย "อัลกอริทึม"


การถ่ายทอดความคิดในการแก้ไขปัญหาด้วย "อัลกอริทึม

1)การเขียนรหัสจำลอง (Pseudo Code) 

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

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

ตัวอย่างที่ 1 จงเขียน Pseudo code จากโปรแกรมหาผลรวมของตัวเลข 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            
                                                           
2)การเขียนผังงาน(Flowchart)   
                                                                            
               ผังงาน คือ แผนภาพที่มีการใช้สัญลักษณ์รูปภาพและลูกศรที่แสดงถึงขั้นตอนการทำงานของโปรแกรมหรือระบบทีละขั้นตอน รวมไปถึงทิศทางการไหลของข้อมูลตั้งแต่แรกจนได้ผลลัพธ์ตามที่ต้องการ มี 2 ประเภท คือ ผังงานระบบ และผังงานโปรแกรม                   

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

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

                     ผังงานระบบ (System Flowchart)                   

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

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

วันเสาร์ที่ 6 กรกฎาคม พ.ศ. 2556

Introduce myself




ชื่อ  นางสาวณัฐนิชา นวลศรี
ชื่อเล่น   อาย
ที่อยู่   9/214   หมู่บ้านรามนุช 14  ต.บ้านฉาง  อ.บ้านฉาง  จ.ระยอง   21130
วันเกิดที่   23   กุมภาพันธุ์   พ.ศ.2540
สัตว์เลี้ยงที่ชอบ   สุนัข วิชาที่ชอบ เคมี ฟิสิกส์
สีที่ชอบ   น้ำเงิน ดำ
อาหารที่ชอบ   สเต็กปลาซอลมอน ยำวุ้นเส้น
กิจกรรมที่ยามว่าง   อ่านนิยาย
อนาคต   นักไฟแนนซ์

กระบวนการเทคโนโลยีสารสนเทศ


กระบวนการเทคโนโลยีสารสนเทศ







1.การวิเคราะห์และกำหนดรายละเอียดของปัญหา (State The Problem) ขั้นตอนนี้เป็นขั้นตอนแรกสุดก่อนที่จะลงมือแก้ปัญหาแต่ผู้แก้ปัญหามักจะมองข้ามไปจุดประสงค์ของขั้นตอนนี้ คือการทำความเข้าใจกับปัญหาเพื่อแยกให้ออกว่าข้อมูลที่กำหนดมาในปัญหาหรือเงื่อนไขของปัญหาคืออะไร อีกทั้งวิธีการที่ใช้ประมวลผลกล่าวโดยสรุปมีองค์ประกอบในการวิเคราะห์ดังนี้-                   การระบุข้อมูลเข้าได้แก่ การพิจารณาข้อมูลและเงื่อนไขที่กำหนดมาในปัญหา-                   การระบุข้อมูลออกได้แก่ การพิจารณาเป้าหมายหรือสิ่งที่ต้องหาคำตอบ-                   การกำหนดวิธีประมวลผลได้แก่ การพิจารณาขั้นตอนวิธีการได้มาซึ่งคำตอบหรือข้อมูลออก

2) การเลือกเครื่องมือและออกแบบขั้นตอนวิธี (Tools And Algorithm Development)
ขั้นตอนนี้เป็นขั้นตอนของการวางแผนในการแก้ปัญหาอย่างละเอียดถี่ถ้วนหลังจากที่เราทำความเข้าใจกับปัญหา พิจารณาเงื่อนไขและข้อมูลที่มีอยู่และสิ่งที่ต้องการหาในการแก้ปัญหาอย่างละเอียดถี่ถ้วนหลังจากที่เราทำความเข้าใจกับปัญหา พิจารณาเงื่อนไขและข้อมูลที่มีอยู่และสิ่งที่ต้องการหาในขั้นตอนที่ 1แล้วเราสามารถคาดคะเนวิธีการที่จะใช้ในการแก้ปัญหาขั้นตอนนี้จำเป็นต้องอาศัยประสบการณ์ของผู้แก้ปัญหาเป็นหลักหากผู้แก้ปัญหาเคยพบกับปัญหาทำนองนี้มาแล้วก็สามารถดำเนินการตามแนวทางที่เคยปฏิบัติมาขั้นตอนนี้จะเริ่มจากการเลือกเครื่องมือที่ใช้ในการแก้ปัญหาโดยพิจารณาความเหมาะสมระหว่างเครื่องมือกับเงื่อนไขต่างๆ ของปัญหาซึ่งหมายรวมถึงความสามารถของเครื่องมือในการแก้ปัญหาดังกล่าวและสิ่งที่สำคัญที่สุดคือความคุ้นเคยในการใช้งานเครื่องมือนั้นๆ ของผู้แก้ปัญหาอีกสิ่งหนึ่งที่ สำคัญในการแก้ปัญหา คือยุทธวิธีที่ใช้ในการแก้ปัญหา หรือที่เราเรียกว่า ขั้นตอนวิธี” (Algorithm) ในการแก้ปัญหาหลังจากที่เราได้เครื่องมือช่วยแก้ปัญหาแล้วผู้แก้ปัญหาต้องวางแผนว่าจะใช้เครื่องมือดังกล่าวเพื่อให้ได้ผลลัพธ์ที่ถูกต้องที่สุด การออกแบบขั้นตอนวิธีในการแก้ปัญหาผู้แก้ปัญหาควรใช้แผนภาพหรือเครื่องมือในการแสดงขั้นตอนการทำงานเพื่อให้ง่ายต่อความเข้าใจ เช่น ผังงาน (Flowchart) ที่จำลองวิธีขั้นตอนการแก้ปัญหาในรูปแบบสัญลักษณ์รหัสจำลอง (Pseudo Code) ซึ่งเป็นการจำลองขั้นตอนวิธีการปัญหาในรูปแบบคำบรรยายการใช้เครื่องมือช่วยออกแบบดังกล่าวนอกจากแสดงกระบวนการที่ชัดเจนแล้วยังช่วยให้ผู้แก้ปัญหาสามารถหาข้อผิดพลาดของวิธีการที่ใช้ได้ง่ายและแก้ไขได้อย่างรวดเร็ว

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

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