My profile from wachiink
Thursday, November 14, 2013
Thursday, September 12, 2013
FORTRAN
เนื่องจากในปัจจุบันทุก ๆ ปีจะมีภาษาคอมพิวเตอร์เกิดขึ้นมากมาย และภาษาต่าง ๆ จะมีจุดดีและจุดด้อยแตกต่างกันไป ผู้ใช้จึงจำเป็นต้องทำการคัดเลือกภาษาที่จะนำมาใช้งานอย่างระมัดระวัง เนื่องจากเมื่อศึกษาและพัฒนาซอฟต์แวร์ด้วยภาษาใดภาษาหนึ่งแล้ว การเปลี่ยนไปใช้ภาษาอื่นในภายหลังจะเป็นเรื่องที่ยากลำบากอย่างยิ่ง ทั้งในเรื่องของค่าใช้จ่ายและเวลาที่ต้องสูญเสียไป รวมทั้งปัญหาของบุคลากรที่ต้องศึกษาหาความชำนาญใหม่อีกด้วย
ในการเลือกภาษาคอมพิวเตอร์ที่จะนำมาใช้ สิ่งที่ควรพิจารณา คือ
- ในหน่วยงานหนึ่ง ๆ ควรจะใช้ภาษาคอมพิวเตอร์ภาษาเดียวกัน เพราะการดูแลรักษาซอฟต์แวร์ที่พัฒนาขึ้นตลอดจนการจัดหาบุคลากรจะกระทำให้ง่ายกว่า
- ในการเลือกภาษาควรเลือกโดยดูจากคุณสมบัติหรือข้อดีของภาษานั้น ๆ เป็่นหลัก
- ถ้าโปรแกรมที่เขียนขึ้นนั้นต้องนำไปทำงานบนเครื่องต่าง ๆ กัน ควรเลือกภาษาที่สามารถใช้งานได้บนทุกเครื่อง เพราะจะทำให้เขียนโปรแกรมเพียงครั้งเดียวเท่านั้น
- ผู้ใช้ควรจำกัดภาษาคอมพิวเตอร์ที่จะใช้ ไม่ควรติดตั้งตัวแปลภาษาคอมพิวเตอร์ทุกภาษาบนเครื่องทุกเครื่อง
- ภาษาคอมพิวเตอร์ที่เลือกใช้ จะถูกจำกัดโดยนักเขียนโปรแกรมที่มีอยู่ เพราะควรใช้ภาษาที่มีผู้รู้อยู่บ้าง
- บางครั้งในงานที่ไม่ยุ่งยากนัก อาจใช้ภาษาคอมพิวเตอร์พื้นฐาน เช่น ภาษา BASIC เพราะเขียนโปรแกรมได้ง่ายและรวดเร็ว รวมทั้งมีติดตั้งอยู่บนเครื่องไมโครคอมพิวเตอร์ส่วนมากอยู่แล้ว
ภาษาฟอร์แทรน (Fortran)
ภาษาฟอร์แทรน หรือ FORTRAN เป็นชื่อที่ย่อมาจาก FORmular TRANslation ถูกพัฒนาขึ้นเมื่อกลางทศวรรษที่ 1950 ด้วยฝีมือของพนักงานบริษัทไอบีเอ็ม นับเป็นภาษาชั้นสูงภาษาแรกที่ได้มีการใช้แพร่หลาย จึงได้มีบัญญัติภาษาฟอร์แทรนฉบับมาตรฐานขึ้นในเวลาต่อมาโดย ANSI (American National Standard Institute)
ฟอร์แทรนถูกออกแบบมาเพื่อใช้งานทางด้านวิทยาศาสตร์ วิศวกรรมศาสตร์และคณิตศาสตร์ อันเป็นงานที่มักใช้งานประมวลที่ซับซ้อน
เนื่องจากฟอร์แทรนถูกออกแบบมาสำหรับการใช้งานทางวิทยาศาสตร์ จึงมีจุดอ่อนในเรื่องเกี่ยวกับการจักการไฟล์ นอกจากนี้จากการที่ฟอร์แทรนถูกออกแบบมาตั้งแต่สมัยที่เรายังใช้บัตรเจาะรูซึ่งมีขนาด 80 คอลัมน์ ทำให้ฟอร์แทรนมีกฎเกณฑ์ที่จะต้องเริ่มต้นและจบประโยคภายในคอลัมน์ที่กำหนด ซึ่งเป็นเรื่องน่ารำคาญพอสมควร ในการเขียนโปรแกรมในปัจจุบัน เมื่อพูดถึงโครงสร้างของภาษาฟอร์แทรนแล้วก็ไม่สามารถสู้ภาษารุ่นใหม่ๆได้
ชุดคำสั่งภาษาฟอร์แทรน
เป็นภาษาคอมพิวเตอร์ที่เหมาะกับการใช้งานทางด้านการคำนวณ ตัวแปลชุดคำสั่งจะทำหน้าที่อ่านชุดคำสั่งที่เป็นภาษาฟอร์แทรนที่เราเขียนขึ้น และแปลเป็นภาษาเครื่องที่ชุดคำสั่งควบคุมสามารถรับได้ คำสั่งในภาษาฟอร์แทรนแต่ละคำสั่งเรียกเป็นภาษาอังกฤษว่า statement ซึ่งแบ่งเป็นดังนี้
คำสั่งรับส่งข้อมูล (input-output statement)ได้แก่ READ, WRITE หรือ PRINT, FORMAT
คำสั่งคำนวณ (arithmetic statement) ได้แก่
- คำสั่งที่เป็นการคำนวณ โดยทางซ้ายมือเป็นตัวแปร ทางขวามือเป็นการคำนวณ เช่น X = A + B + 5
- คำสั่งตรรกะ (logical statement) เป็นคำสั่งประเภทควบคุม ได้แก่ คำสั่งที่ใช้ในการทดสอบ ค่าเช่น IF (A.EQ.B) GO TO 15 หรือ GO TO (1, 2, 3,4, 5) และ I เป็นต้น
นอกจากนี้ ยังมีคำสั่งประกอบอื่นๆ อีก เช่น DIMENSION, DATA, CALL SUB, และ RETURN เป็นต้น
คำสั่งรับส่งข้อมูล (input-output statement)ได้แก่ READ, WRITE หรือ PRINT, FORMAT
คำสั่งคำนวณ (arithmetic statement) ได้แก่
- คำสั่งที่เป็นการคำนวณ โดยทางซ้ายมือเป็นตัวแปร ทางขวามือเป็นการคำนวณ เช่น X = A + B + 5
- คำสั่งตรรกะ (logical statement) เป็นคำสั่งประเภทควบคุม ได้แก่ คำสั่งที่ใช้ในการทดสอบ ค่าเช่น IF (A.EQ.B) GO TO 15 หรือ GO TO (1, 2, 3,4, 5) และ I เป็นต้น
นอกจากนี้ ยังมีคำสั่งประกอบอื่นๆ อีก เช่น DIMENSION, DATA, CALL SUB, และ RETURN เป็นต้น

ฟอร์แทรนเป็นภาษาระดับสูงที่ใช้เขียนคำสั่งงานเพื่อควบคุมการทำงานของเครื่องคอมพิวเตอร์ขนาดใหญ่ เช่น เครื่องเมนเฟรม (Mainframe Computer) เป็นภาษาที่ใช้แก้ปัญหาด้านวิทยาศาสตร์และคณิตศาสตร์ ภาษา FORTRAN จึงเหมาะสำหรับเขียนโปรแกรมเกี่ยวกับสูตร สมการ หรือฟังก์ชันทางวิทยาศาสตร์และคณิตศาสตร์
ตัวอย่างของภาษา FORTRAN บางส่วน มีดังนี้
READ X
IF((X.GT.0) .AND. (X.LT.100)) THEN
PRINT *, ‘VALUE OF X IS :’,X
ELSE
PRINT * , ‘X IS NOT BETWEEN 0 AND 100’
ความหมายของคำสั่งงาน
READ X หมายถึง การอ่านค่าลงในตัวแปรชื่อ X
IF((X.GT.0) .AND. (X.LT.100)) THEN หมายถึง การตรวจสอบค่า X ที่อ่านค่า เข้ามาว่าอยู่ระหว่า 0-100 หรือไม่ ถ้าใช่ให้ทำคำสั่งหลัง THEN ถ้า
ไม่ใช่ให้ทำคำสั่งหลัง ELSE
PRINT *, ‘VALUE OF X IS :’,X หมายถึง ให้พิมพ์ทั้งประโยคด้วยข้อความที่ กำหนดแล้วตามด้วยค่าของตัวแปร X ที่อ่านเข้ามา
PRINT * , ‘X IS NOT BETWEEN 0 AND 100’ หมายถึง พิมพ์ทั้งประโยค โดยแสดงค่าของX ก่อนประโยคข้อความ
ข้อดีของภาษาฟอร์แทรน
เป็นภาษาที่มีคำสั่งงานเน้นประสิทธิภาพด้านการคำนวณ วิทยาศาสตร์และคณิตศาสตร์รวมทั้งคำสั่งควบคุมการทำงานของอุปกรณ์เครื่องเมนเฟรม
ข้อจำกัดของภาษาฟอร์แทรน
เนื่องจากคำสั่งงานเหมาะสำหรับการควบคุมการทำงานของเครื่องคอมพิวเตอร์ขนาดใหญ่ เมื่อนำมาประยุกต์ใช้กับเครื่องคอมพิวเตอร์ขนาดเล็ก จะต้องปรับใช้คำสั่งมากมาย รวมทั้งเมื่อมีการเปลี่ยนเครื่องประมวลผลก็ต้องเปลี่ยนรูปแบบคำสั่งทุกครั้ง
รูปตัวอย่างการเขียนโปรแกรมภาษาฟอร์แทรน


Thursday, August 22, 2013
ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์ หมายถึง ภาษาใดๆ ที่ผู้ใช้งานใช้สื่อสารกับคอมพิวเตอร์ หรือคอมพิวเตอร์ด้วยกัน แล้วคอมพิวเตอร์สามารถทำงานตามคำสั่งนั้นได้ คำนี้มักใช้เรียกแทนภาษาโปรแกรม แต่ความเป็นจริงภาษาโปรแกรมคือส่วนหนึ่งของภาษาคอมพิวเตอร์เท่านั้น และมีภาษาอื่นๆ ที่เป็นภาษาคอมพิวเตอร์เช่นกัน ยกตัวอย่างเช่น HTML เป็นทั้งภาษามาร์กอัปและภาษาคอมพิวเตอร์ด้วย แม้ว่ามันจะไม่ใช่ภาษาโปรแกรม หรือภาษาเครื่องนั้นก็นับเป็นภาษาคอมพิวเตอร์ ซึ่งโดยทางเทคนิคสามารถใช้ในการเขียนโปรแกรมได้ แต่ก็ไม่จัดว่าเป็นภาษาโปรแกรม
ภาษาเครื่อง (Machine Language)การเขียนโปรแกรมเพื่อสั่งให้คอมพิวเตอร์ทำงานในยุคแรก ๆ จะต้องเขียนด้วยภาษาซึ่งเป็นที่ยอมรับของเครื่องคอมพิวเตอร์ที่เรียกว่า “ภาษาเครื่อง” ภาษานี้ประกอบด้วยตัวเลขล้วน ทำให้เครื่องคอมพิวเตอร์สามารถทำงานได้ทันที ผู้ที่จะเขียนโปรแกรมภาษาเครื่องได้ ต้องสามารถจำรหัสแทนคำสั่งต่าง ๆ ได้ และในการคำนวณต้องสามารถจำได้ว่าจำนวนต่าง ๆ ที่ใช้ในการคำนวณนั้นถูกเก็บไว้ที่ตำแหน่งใด ดังนั้นโอกาสที่จะเกิดความผิดพลาดในการเขียนโปรแกรมจึงมีมาก นอกจากนี้เครื่องคอมพิวเตอร์แต่ละระบบมีภาษาเครื่องที่แตกต่างกันออก ทำให้เกิดความไม่สะดวกเมื่อมีการเปลี่ยนเครื่องคอมพิวเตอร์เพราะจะต้องเขียนโปรแกรมใหม่ทั้งหมด
ภาษาระดับสูง (High Level Language)ภาษาระดับสูงเป็นภาษาที่สร้างขึ้นเพื่อช่วยอำนวยความสะดวกในการเขียนโปรแกรมกล่าวคือลักษณะของคำสั่งจะประกอบด้วยคำต่าง ๆ ในภาษาอังกฤษ ซึ่งผู้อ่านสามารถเข้าใจความหมายได้ทันที ผู้เขียนโปรแกรมจึงเขียนโปรแกรมด้วยภาษาระดับสูงได้ง่ายกว่าเขียนด้วยภาษาแอสเซมบลีหรือภาษาเครื่อง ภาษาระดับสูงมีมากมายหลายภาษา อาทิเช่น ภาษาฟอร์แทรน (FORTRAN) ภาษาโคบอล (COBOL) ภาษาปาสคาล (Pascal) ภาษาเบสิก(BASIC) ภาษาวิชวลเบสิก (Visual Basic) ภาษาซี (C) และภาษาจาวา (Java) เป็นต้น โปรแกรมที่เขียนด้วยภาษาระดับสูงแต่ละภาษาจะต้องมีโปรแกรมที่ทำหน้าที่แปลภาษาระดับสูงให้เป็นภาษาเครื่อง เช่น โปรแกรมแปลภาษาฟอร์แทรนเป็นภาษาเครื่อง โปรแกรมแปลภาษาปาสคาลเป็นภาษาเครื่อง คำสั่งหนึ่งคำสั่งในภาษาระดับสูงจะถูกแปลเป็นภาษาเครื่องหลายคำสั่ง
ภาษาแอสเซมบลี หมายถึง ภาษาที่ใช้ในการเขียนโปรแกรมภาษาหนึ่งซึ่งจะทำงานโดยขึ้นกับรุ่นของไมโครโพรเซสเซอร์ หรือ "หน่วยประมวลผล" (CPU) ของเครื่องคอมพิวเตอร์
์
ภาษาเครื่อง (Machine Language)การเขียนโปรแกรมเพื่อสั่งให้คอมพิวเตอร์ทำงานในยุคแรก ๆ จะต้องเขียนด้วยภาษาซึ่งเป็นที่ยอมรับของเครื่องคอมพิวเตอร์ที่เรียกว่า “ภาษาเครื่อง” ภาษานี้ประกอบด้วยตัวเลขล้วน ทำให้เครื่องคอมพิวเตอร์สามารถทำงานได้ทันที ผู้ที่จะเขียนโปรแกรมภาษาเครื่องได้ ต้องสามารถจำรหัสแทนคำสั่งต่าง ๆ ได้ และในการคำนวณต้องสามารถจำได้ว่าจำนวนต่าง ๆ ที่ใช้ในการคำนวณนั้นถูกเก็บไว้ที่ตำแหน่งใด ดังนั้นโอกาสที่จะเกิดความผิดพลาดในการเขียนโปรแกรมจึงมีมาก นอกจากนี้เครื่องคอมพิวเตอร์แต่ละระบบมีภาษาเครื่องที่แตกต่างกันออก ทำให้เกิดความไม่สะดวกเมื่อมีการเปลี่ยนเครื่องคอมพิวเตอร์เพราะจะต้องเขียนโปรแกรมใหม่ทั้งหมด
ภาษาระดับสูง (High Level Language)ภาษาระดับสูงเป็นภาษาที่สร้างขึ้นเพื่อช่วยอำนวยความสะดวกในการเขียนโปรแกรมกล่าวคือลักษณะของคำสั่งจะประกอบด้วยคำต่าง ๆ ในภาษาอังกฤษ ซึ่งผู้อ่านสามารถเข้าใจความหมายได้ทันที ผู้เขียนโปรแกรมจึงเขียนโปรแกรมด้วยภาษาระดับสูงได้ง่ายกว่าเขียนด้วยภาษาแอสเซมบลีหรือภาษาเครื่อง ภาษาระดับสูงมีมากมายหลายภาษา อาทิเช่น ภาษาฟอร์แทรน (FORTRAN) ภาษาโคบอล (COBOL) ภาษาปาสคาล (Pascal) ภาษาเบสิก(BASIC) ภาษาวิชวลเบสิก (Visual Basic) ภาษาซี (C) และภาษาจาวา (Java) เป็นต้น โปรแกรมที่เขียนด้วยภาษาระดับสูงแต่ละภาษาจะต้องมีโปรแกรมที่ทำหน้าที่แปลภาษาระดับสูงให้เป็นภาษาเครื่อง เช่น โปรแกรมแปลภาษาฟอร์แทรนเป็นภาษาเครื่อง โปรแกรมแปลภาษาปาสคาลเป็นภาษาเครื่อง คำสั่งหนึ่งคำสั่งในภาษาระดับสูงจะถูกแปลเป็นภาษาเครื่องหลายคำสั่ง
ภาษาแอสเซมบลี หมายถึง ภาษาที่ใช้ในการเขียนโปรแกรมภาษาหนึ่งซึ่งจะทำงานโดยขึ้นกับรุ่นของไมโครโพรเซสเซอร์ หรือ "หน่วยประมวลผล" (CPU) ของเครื่องคอมพิวเตอร์
การใช้ภาษาแอสเซมบลีจำเป็นต้องผ่านการแปลภาษาด้วยคอมไพเลอร์เฉพาะเรียกว่า แอสเซมเบลอร์ (assembler) ให้อยู่ในรูปของรหัสคำสั่งก่อน (เช่น .OBJ) โดยปกติ ภาษานี้ค่อนข้างมีความยุ่งยากในการใช้งาน และการเขียนโปรแกรมเป็นจำนวนบรรทัดมากมากกว่า เมื่อเปรียบเทียบกับการใช้ภาษาระดับสูง เช่น ภาษา C หรือภาษา BASIC แต่จะทำให้ได้ผลลัพธ์การทำงานของโปรแกรมเร็วกว่า และขนาดของตัวโปรแกรมมีขนาดเนื้อที่น้อยกว่าโปรแกรมที่สร้างจากภาษาอื่นมาก จึงนิยมใช้ภาษานี้เมื่อต้องการประหยัดเวลาทำงานของเครื่องคอมพิวเตอร์ และเพิ่มประสิทธิภาพของโปรแกรม
เนื่องจากตัวคำสั่งภายในภาษาอ้างอิงเฉพาะกับรุ่นของหน่วยประมวลผล ดังนั้นถ้ามีการเปลี่ยนแปลงไปใช้กับหน่วยประมวลผลอื่นหรือระบบอื่น (เช่น หน่วยประมวลผล x86 ไม่เหมือนกับ z80) จะต้องมีการปรับแก้ตัวคำสั่งภายในซึ่งบางครั้งอาจไม่สามารถปรับปรุงแก้ไขได้อย่างสมบูรณ์
ภาษาชั้นสูงมาก (Very high - Level Language)
สามารถเรียกได้อีกอย่างว่าภาษาในรุ่นที่4 (4GLs:Fourth Generation Languages)ภาษานี้เป็นภาษาที่อยู่ในระดับที่สูงกว่าภาษารุ่นที่3มีลักษณะของภาษาในรุ่นที่เป็นธรรมชาติคล้ายๆกับภาษาพูดของมนุษย์จะช่วย ในเรื่องของการสร้างแบบฟอร์มบนหน้าจอเพื่อจัดการเกี่ยวกับข้อมูล รวมไปถึงการออกรายงาน ซึ่งจะมีการจัดการ ที่ง่ายมากไม่ยุ่งยากเหมือนภาษารุ่นที่3 ตัวอย่างของภาษาในรุ่นที่ 4 ได้แก่ Informix-4GL, Focus, Sybase, InGres เป็นต้น ลักษณะของ 4GL มีดังต่อไปนี้ เป็นภาษาแบบ Nonprocedural ซึ่งหมายความว่าผู้ใช้เพียงแต่บอกว่าต้องการอะไร แต่ไม่ต้องบอกถึงรายละเอียดว่าต้องทำอย่างไร คอมพิวเตอร์จะเป็นผู้จัดการให้เองหมด ตัวอย่างเช่น ถ้าต้องการสร้างแบบฟอร์มการรับข้อมูลจาก ผู้ใช้ผู้เขียนโปรแกรมเพียงแต่ทำการออกแบบหน้าตาของแบบฟอร์มนั้นบนโปรแกรมอิดิเตอร์(Editor)ใดๆ และเก็บ เป็นไฟล์ไว้เมื่อจะเรียกใช้งานแบบฟอร์มนั้นเพียงแต่ใช้คำสั่งเปิดไฟล์นั้นขึ้นมาแสดงบนหน้าจอคอมพิวเตอร์ได้โดยทันทีซึ่งต่างจากภาษารุ่นที่3ซึ่งเป็นแบบ Proceduralผู้เขียนโปรแกรมจะต้องเขียนรายละเอียดของโปรแกรม ทั้งหมดว่าที่บรรทัดนี้คอลัมน์นี้จะให้แสดงข้อความหรือข้อมูลอะไรออกมาซึ่งถ้าต่อไปจะมีการปรับเปลี่ยนหน้าตา ของแบบฟอร์ม ก็จะเป็นเรื่องที่ยุ่งยากอย่างยิ่ง หรือในการสร้างรายงานด้วย 4GLs ก็สามารถทำได้อย่างง่ายดายเพียง แต่ระบุลงไปว่าต้องการรายงานอะไร มีข้อมูลใดที่จะนำมาแสดงบ้าง โดยไม่ต้องบอกถึงวิธีการสร้าง หรือการดึงข้อมูล แต่อย่างใด 4GLsจะจัดการให้เองหมด ส่วนใหญ่จะพบว่า 4GLs มักจะอยู่ควบคู่กับระบบฐานข้อมูล โดยผู้ใช้ระบบฐานข้อมูลจะสามารถจัดการฐานข้อมูล ได้โดยผ่านทาง 4GLs นี้ ส่วนประกอบของภาษา 4GLs โดยทั่วไปแล้ว 4GLs จะประกอบด้วยส่วนสำคัญ 3 ส่วนดังต่อไปนี้ เครื่องช่วยสร้างรายงาน (Report Generators) หรืออาจเรียกได้อีกอย่างว่า เครื่องมือช่วยเขียนรายงาน (Report Writer)เป็นโปรแกรมสำหรับผู้ใช้(end - users)ให้สามารถสร้างรายงานอย่างง่ายได้ด้วยตนเอง โดยผู้ใช้สามารถกำหนดเงื่อนไขและข้อมูลที่จะออกมาพิมพ์ในรายงาน รวมไปถึงรูปแบบ (format)ของการพิมพ์ไว้ โปรแกรมช่วยสร้างรายงานนี้จะทำการพิมพ์รายงานตามรูปแบบที่เรากำหนดไว้ให้ ภาษาช่วยค้นหาข้อมูล(Query Languages)เป็นภาษาที่ช่วยในการค้นหาหรือดึงข้อมูลจากฐานข้อมูล ภาษานี้จะง่ายต่อการใช้งานมาก เนื่องจากจะอยู่ในรูปแบบที่ ใกล้เคียงกับภาษาอังกฤษมาก ตัวอย่างของภาษาช่วยค้นหาข้อมูลนี้ได้แก่ ภาษา SQL (Structured Query Language) ภาษา QBE (Query - By - Example)และIntellect เป็นต้น เครื่องมือช่วยสร้างโปรแกรม(Application Generators) 4GLs จะมีรูปแบบการเขียนโปรแกรมเฉพาะตัว และสามารถเรียกใช้เครื่องมือช่วยสร้างโปรแกรมนี้ทำการแปลง 4GLs ให้กลายเป็นโปรกรมในภาษารุ่นที่ 3 ได้ เช่น ภาษาโคบอล หรือ ภาษาซี เป็นต้น ซึ่งอาจนำภาษาโคบอล หรือซีที่แปลงได้ ไปพัฒนาต่อเพื่อใช้กับงานที่มีความซับซ้อนมากๆ ต่อไปได้ ประโยชน์ของ 4GL เป็นภาษาที่ง่ายต่อการเรียนรู้ คำสั่งแต่ละคำสั่งสื่อความหมายได้อย่างชัดเจน ดังนั้น จึงสามารถใช้เวลาในการศึกษาสั้นกว่าภาษารุ่นที่ 3 ประหยัดเวลาในการเขียนโปรแกรมได้มาก เนื่องจาก 1 คำสั่งของ 4GL ถ้าต้อง เขียนด้วยภาษารุ่นที่ 3 อาจต้องเขียนถึง 100 กว่าคำสั่งในการทำงานแบบเดียวกัน สนับสนุนระบบจัดการฐานข้อมูล ทำให้สามารถจัดการกับข้อมูลได้อย่างสะดวก และรวดเร็ว สามารถสร้างแบบฟอร์มเพื่อจัดการกับข้อมูลในฐานข้อมูล และออกรายงานได้ อย่างง่ายดาย ไม่ยุ่งยาก มีเครื่องมือการใช้งานเพื่ออำนวยความสะดวกในการเขียนโปรแกรมมากพอสมควร สามารถทำงานได้ในลักษณะ Interactive คือมีการโต้ตอบกับผู้ใช้ได้ทันที
ภาษาธรรมชาติ (natural language) นั้น ใช้เพื่อแยกความแตกต่างระหว่างภาษาทั่ว ๆ ไปที่เกิดขึ้นตามธรรมชาติเพื่อการสื่อสาร เช่น ภาษามนุษย์ ออกจากภาษาที่ถูกสร้างขึ้นอย่าง เช่นภาษาโปรแกรมสำหรับสั่งงานคอมพิวเตอร์ หรือภาษาที่ใช้ในการศึกษาตรรกะ
์
Thursday, July 11, 2013
การถ่ายทอดความคิดในการแก้ปัญหาด้วยอัลกอลิทึม
การเขียนรหัสจำลอง ( Pseudo Code )
ซูโดโค้ด (Pseudocode) หรือ ในภาษาไทย เรียกว่า รหัสจำลอง หรือ รหัสเทียมคือ การจำลองการเขียนโปรแกรม โดยเขียนคำสั่งเป็นภาษาอะไรก็ได้ เช่น ไทย หรือ อังกฤษ ฯลฯ ที่ไม่ใช่ภาษาคอมพิวเตอร์ขั้นสูงอย่าง ภาษา C หรือ Java ซูโดโค้ดนี้จะไม่ขึ้นกับภาษาคอมพิวเตอร์ใดๆ โดยเฉพาะ ใช้อธิบายการทำงานของโปรแกรม เนื่องจากสื่อด้วยภาษาง่ายๆ อย่าง ไทย, อังกฤษ ทำให้ผู้อ่านเข้าใจได้ง่าย และตรงกัน โดยปกติแล้วมักใช้ภาษาอังกฤษ เนื่องจากสามารถแปลเป็นภาษาคอมพิวเตอร์ได้ง่าย
ตัวอย่างที่ 1 จงเขียน Pseudocode จากโปรแกรมหาผลรวมของตัวเลข 2 ค่า แล้วแสดงผลรวมออกมาทางหน้าจอ
1. read x , y
2. calculate sum = x + y
3. print sum
การเขียนผังงาน ( Flowchart )
ผังงาน คือ แผนภาพที่มีการใช้สัญลักษณ์รูปภาพและลูกศรที่แสดงถึงขั้นตอนการทำงานของโปรแกรมหรือระบบทีละขั้นตอน รวมไปถึงทิศทางการไหลของข้อมูลตั้งแต่แรกจนได้ผลลัพธ์ตามที่ต้องการ
ตัวอย่าง การเขียนผังงานแสดงขั้นตอนการส่งจดหมาย
Thursday, July 4, 2013
กระบวนการเทคโนโลยีสารสนเทศน์
กระบวนการเทคโนโลยีสารสนเทศน์
1. การวิเคราะห์และกำหนดรายละเอียดของปัญหา
2.การเลือกเครื่องมือและการออกแบบขั้นตอน
3.การดำเนินการแก้ปัญหา
หลังจากที่ออกแบบขั้นตอนวิธีเรียบร้อยแล้ว
ขั้นตอนนี้เป็นขั้นตอนที่ต้องลงมือแก้ปัญหาโดยใช้เครื่องมือที่เลือกไว้
การแก้ปัญหาดังกล่าวใช้คอมพิวเตอร์เข้ามาช่วยงาน
ขั้นตอนนี้ก็เป็นการใช้โปรแกรมสำเร็จหรือใช้ภาษาคอมพิวเตอร์เขียนโปรแกรมแก้ ปัญหา
ขั้นตอนนี้ต้องอาศัยความรู้เกี่ยวกับเครื่องมือที่เลือกใช้
ซึ่งผู้แก้ปัญหาต้องศึกษาให้เข้าใจและเชี่ยวชาญ ในขณะดำเนินการ
หากพบแนวทางที่ดีกว่าที่ออกแบบไว้ ก็สามารถปรับเปลี่ยนได้
4.การตรวจสอบและปรับปรุง
1. การวิเคราะห์และกำหนดรายละเอียดของปัญหา
ขั้นตอนนี้เป็นขั้นตอนแรกสุดก่อนที่จะลงมือแก้ปัญหาแต่ผู้แก้ปัญหามักจะมองข้ามไป
จุดประสงค์ของขั้นตอนนี้ คือ การทำความเข้าใจกับปัญหาเพื่อแยกให้ออกว่าข้อมูลที่กำหนดมาในปัญหาหรือเงื่อนไขของปัญหาคืออะไร อีกทั้งวิธีการที่ใช้ประมวลผลกล่าวโดยสรุปมีองค์ประกอบในการวิเคราะห์ดังนี้
- การระบุข้อมูลเข้า
ได้แก่ การพิจารณาข้อมูลและเงื่อนไขที่กำหนดมาในปัญหา
- การระบุข้อมูลออก
- การกำหนดวิธีประมวลผล
2.การเลือกเครื่องมือและการออกแบบขั้นตอน
ขั้นตอนนี้เป็นขั้นตอนของการวางแผนในการแก้ปัญหาอย่างละเอียดถี่ถ้วน
หลังจากที่เราทำความเข้าใจกับปัญหา พิจารณาเงื่อนไขและข้อมูลที่มีอยู่
และสิ่งที่ต้องการหาในการแก้ปัญหาอย่างละเอียดถี่ถ้วน
หลังจากที่เราทำความเข้าใจกับปัญหา พิจารณาเงื่อนไขและข้อมูลที่มีอยู่
และสิ่งที่ต้องการหาในขั้นตอนที่ 1
แล้ว
เราสามารถคาดคะเนวิธีการที่จะใช้ในการแก้ปัญหา
ขั้นตอนนี้จำเป็นต้องอาศัยประสบการณ์ของผู้แก้ปัญหาเป็นหลัก
หากผู้แก้ปัญหาเคยพบกับปัญหาทำนองนี้มาแล้วก็สามารถดำเนินการตามแนวทางที่
เคยปฏิบัติมา
หลังจากที่เราทำความเข้าใจกับปัญหา พิจารณาเงื่อนไขและข้อมูลที่มีอยู่
และสิ่งที่ต้องการหาในการแก้ปัญหาอย่างละเอียดถี่ถ้วน
หลังจากที่เราทำความเข้าใจกับปัญหา พิจารณาเงื่อนไขและข้อมูลที่มีอยู่
และสิ่งที่ต้องการหาในขั้นตอนที่ 1
แล้ว
เราสามารถคาดคะเนวิธีการที่จะใช้ในการแก้ปัญหา
ขั้นตอนนี้จำเป็นต้องอาศัยประสบการณ์ของผู้แก้ปัญหาเป็นหลัก
หากผู้แก้ปัญหาเคยพบกับปัญหาทำนองนี้มาแล้วก็สามารถดำเนินการตามแนวทางที่
เคยปฏิบัติมา
ขั้นตอนนี้จะเริ่มจากการเลือกเครื่องมือที่ใช้ในการแก้ปัญหา
โดยพิจารณาความเหมาะสมระหว่างเครื่องมือกับเงื่อนไขต่างๆ ของปัญหา
ซึ่งหมายรวมถึงความสามารถของเครื่องมือในการแก้ปัญหาดังกล่าว
และสิ่งที่สำคัญที่สุดคือความคุ้นเคยในการใช้งานเครื่องมือนั้นๆ ของผู้แก้ปัญหา
โดยพิจารณาความเหมาะสมระหว่างเครื่องมือกับเงื่อนไขต่างๆ ของปัญหา
ซึ่งหมายรวมถึงความสามารถของเครื่องมือในการแก้ปัญหาดังกล่าว
และสิ่งที่สำคัญที่สุดคือความคุ้นเคยในการใช้งานเครื่องมือนั้นๆ ของผู้แก้ปัญหา
อีกสิ่งหนึ่งที่ สำคัญในการแก้ปัญหา คือ
ยุทธวิธีที่ใช้ในการแก้ปัญหา หรือที่เราเรียกว่า “ขั้นตอนวิธี” (Algorithm) ในการแก้ปัญหา
หลังจากที่เราได้เครื่องมือช่วยแก้ปัญหาแล้ว
ผู้แก้ปัญหาต้องวางแผนว่าจะใช้เครื่องมือดังกล่าวเพื่อให้ได้ผลลัพธ์ที่ถูก
ต้องที่สุด การออกแบบขั้นตอนวิธีในการแก้ปัญหา
ผู้แก้ปัญหาควรใช้แผนภาพหรือเครื่องมือในการแสดงขั้นตอนการทำงาน
เพื่อให้ง่ายต่อความเข้าใจ เช่น ผังงาน (Flowchart) ที่จำลองวิธีขั้นตอนการแก้ปัญหาในรูปแบบสัญลักษณ์
รหัสจำลอง (Pseudo Code) ซึ่งเป็นการจำลองขั้นตอนวิธีการปัญหาในรูปแบบคำบรรยาย
การใช้เครื่องมือช่วยออกแบบดังกล่าว
นอกจากแสดงกระบวนการที่ชัดเจนแล้วยังช่วยให้ผู้แก้ปัญหาสามารถหาข้อผิดพลาด
ของวิธีการที่ใช้ได้ง่ายและแก้ไขได้อย่างรวดเร็ว
ยุทธวิธีที่ใช้ในการแก้ปัญหา หรือที่เราเรียกว่า “ขั้นตอนวิธี” (Algorithm) ในการแก้ปัญหา
หลังจากที่เราได้เครื่องมือช่วยแก้ปัญหาแล้ว
ผู้แก้ปัญหาต้องวางแผนว่าจะใช้เครื่องมือดังกล่าวเพื่อให้ได้ผลลัพธ์ที่ถูก
ต้องที่สุด การออกแบบขั้นตอนวิธีในการแก้ปัญหา
ผู้แก้ปัญหาควรใช้แผนภาพหรือเครื่องมือในการแสดงขั้นตอนการทำงาน
เพื่อให้ง่ายต่อความเข้าใจ เช่น ผังงาน (Flowchart) ที่จำลองวิธีขั้นตอนการแก้ปัญหาในรูปแบบสัญลักษณ์
รหัสจำลอง (Pseudo Code) ซึ่งเป็นการจำลองขั้นตอนวิธีการปัญหาในรูปแบบคำบรรยาย
การใช้เครื่องมือช่วยออกแบบดังกล่าว
นอกจากแสดงกระบวนการที่ชัดเจนแล้วยังช่วยให้ผู้แก้ปัญหาสามารถหาข้อผิดพลาด
ของวิธีการที่ใช้ได้ง่ายและแก้ไขได้อย่างรวดเร็ว
3.การดำเนินการแก้ปัญหา
หลังจากที่ออกแบบขั้นตอนวิธีเรียบร้อยแล้ว
ขั้นตอนนี้เป็นขั้นตอนที่ต้องลงมือแก้ปัญหาโดยใช้เครื่องมือที่เลือกไว้
การแก้ปัญหาดังกล่าวใช้คอมพิวเตอร์เข้ามาช่วยงาน
ขั้นตอนนี้ก็เป็นการใช้โปรแกรมสำเร็จหรือใช้ภาษาคอมพิวเตอร์เขียนโปรแกรมแก้ ปัญหา
ขั้นตอนนี้ต้องอาศัยความรู้เกี่ยวกับเครื่องมือที่เลือกใช้
ซึ่งผู้แก้ปัญหาต้องศึกษาให้เข้าใจและเชี่ยวชาญ ในขณะดำเนินการ
หากพบแนวทางที่ดีกว่าที่ออกแบบไว้ ก็สามารถปรับเปลี่ยนได้
4.การตรวจสอบและปรับปรุง
หลังจากที่ลงมือแก้ปัญหาแล้วต้องตรวจสอบให้แน่ใจว่า
วิธีการนี้ให้ผลลัพธ์ที่ถูกต้องโดยผู้แก้ปัญหาต้องตรวจสอบว่าขั้นตอนวิธีที่สร้างขึ้นสอดคล้องกับรายละเอียดของปัญหา ซึ่งได้แก่ ข้อมูลเข้าและข้อมูลออกเพื่อให้มั่นใจว่าสามารถรองรับข้อมูลเข้าได้ทุกกรณีอย่างถูกต้องสมบูรณ์ ในขณะเดียวกันกต้องปรับปรุงวิธีการเพื่อให้การแก้ปัญหานี้ได้ผลลัพธ์ที่ดี
ที่สุด
วิธีการนี้ให้ผลลัพธ์ที่ถูกต้องโดยผู้แก้ปัญหาต้องตรวจสอบว่าขั้นตอนวิธีที่สร้างขึ้นสอดคล้องกับรายละเอียดของปัญหา ซึ่งได้แก่ ข้อมูลเข้าและข้อมูลออกเพื่อให้มั่นใจว่าสามารถรองรับข้อมูลเข้าได้ทุกกรณีอย่างถูกต้องสมบูรณ์ ในขณะเดียวกันกต้องปรับปรุงวิธีการเพื่อให้การแก้ปัญหานี้ได้ผลลัพธ์ที่ดี
ที่สุด
Thursday, June 27, 2013
MY PROFILE
MY PROFILE
- My name is wachiraya ,, you can call me ink ;)
- I'm 16 years old ; My birthday is 6 January 1997
- My favorite colors are purple,blue and gray
- My favorite superstars are Justin Bieber,Taylor Swift and Avril Lavigne
- My hobbies are playing piano and listening to music :3 :3 :3
*add me a friend wink wink ;)
- IG : wachiink
- My best friend << She is a pretty fat girl let's guess who is she haha :D
Subscribe to:
Posts (Atom)