วันพุธที่ 4 กันยายน พ.ศ. 2556

ภาษาคอมพิวเตอร์ (ภาษาโคบอล)

ภาษาคอมพิวเตอร์
ภาษาโคบอล Cobal

 

ความหมายของภาษาโคบอล (COBOL)

                เป็นภาษาโปรแกรมระดับสูงภาษาหนึ่งที่อยู่มาอย่างยาวนาน COBOL ย่อมาจาก Common Business Oriented Language เป็นภาษาที่นิยมนำไปใช้ทางธุรกิจ ถูกพัฒนาขึ้นเมื่อ ค.ศ. 1959 โดยนักคอมพิวเตอร์กลุ่มหนึ่งที่เรียกตัวเองว่า Conference on Data Systems Languages (CODASYL) และตั้งแต่ปี ค.ศ. 1959 ภาษาโคบอลมีการแก้ไขและปรับปรุงอยู่ตลอด ดังนั้น เพื่อขจัดปัญหาความแตกต่างของตัวภาษาโคบอลในแต่ละเวอร์ชัน สถาบันมาตรฐานแห่งชาติอเมริกัน (ANSI) จึงได้พัฒนามาตรฐานกลางขึ้นมาในปี ค.ศ. 1968 เป็นที่รู้จักกันในนามของ ANS COBOL ต่อมาเมื่อ ปี ค.ศ. 1974 ทาง ANSI ได้นำเสนอ ANS COBOL รุ่นใหม่ที่มีคุณสมบัติที่ดีกว่ารุ่น 1968 และในปี ค.ศ. 1985 ANSI ก็นำเสนออีกรุ่นหนึ่งที่มีคุณสมบัติมากกว่ารุ่นปี 1974

                 ภาษาโคบอล (COBOL : Common Business Oriented Language) คือภาษาคอมพิวเตอร์สำหรับใช้ในงานธุรกิจภาษาแรกของโลก พัฒนาในปีค.ศ. 1962 โดยคณะกรรมการโคดาซิล (The Conference on Data Systems Languages - CODASYL) มีจุดเด่นคือ สามารถใช้งานแฟ้มข้อมูลได้หลายแบบ กำหนดโครงสร้างข้อมูลได้สะดวก มีลักษณะการเขียนโปรแกรม แบบเอกสารอธิบายโปรแกรม ช่วยให้นักพัฒนารุ่นถัดไปเข้าใจได้ง่าย

การเขียนโปรแกรมภาษา COBOL เป็นภาษาที่ง่ายมากภาษาหนึ่ง เพราะไม่มีลูกเล่นให้ใช้มาก ๆ เหมือนพวก VB, C, Pascal หรือ dBase


หน้าที่ของภาษาโคบอล (COBAL)

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

ภาษา COBOL ประกอบด้วย 4 Division ได้แก่
1. Identification division การกำหนดชื่อโปรแกรมและชื่อผู้เขียน
2. Environment division การอธิบายเกี่ยวกับคอมพิวเตอร์
3. Data division การอธิบายเกี่ยวกับการประมวลผลข้อมูล
4. Procedure division การอธิบายเกี่ยวกับขั้นตอนการประมวลผล


ข้อดีข้อเสีย ของภาษาโคบอล (COBAL)


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

ข้อเสีย คือ มีความยาวในการเขียนโปรแกรมค่อนข้างมาก และเยิ่นเย้อ ไม่เหมาะกับการคำนวณที่ซับซ้อน

 
ตัวอย่างคำสั่งภาษาโคบอล (COBAL)

1.move 1 to a
2.add 1 to a
3.compute a = a + 1
4.accept a
5.accept a with background-color is 2 foreground-collor is 0
6.display 5 line 5 col 10
7.display 5 with no advancing
8.display 5 at 0950
9.if a = 1 display "one"
10.if a =1 display "one" else display "other".
11.read xfile at end move "1" to flag-end.
12.perform x-para
13.perform y-para until flag-end = "1"
14.perform z-para 10 times
15.perform z-para until i >= 12
16.stop run.
17.open input file1 fil2
18.open output file3 file4
19.close file1
20.write outrec from inrec before advancing 1 line
21.file-control.
 select salafile assign to "d.dat"
 organization is indexed access is sequential record key is sid.


ตัวอย่างชุดภาษาโคบอล (COBAL)

ตัวอย่างโปรแกรมอย่างง่าย

ตัวอย่าง 1 : การแสดงผลอย่างง่าย
:: ให้เขียนโปรแกรมพิมพ์เลข 5 บนจอภาพ
ไม่ต้องเขียนให้ครบทุก division ก็ compile แล้วสั่งประมวลผลได้
อย่างลืมว่า procedure เริ่มหลักที่ 8 และ display เริ่มหลักที่ 12 เพราะเป็นกฎเหล็กของภาษา
รหัสต้นฉบับ
procedure division.
display 5.

ตัวอย่าง 2 : ผ่าน หรือตก
:: รับค่าไปเปรียบเทียบ แล้วพิมพ์ pass หรือ fail
รหัสต้นฉบับ
working-storage section.
01 s   pic 99.
procedure division.
accept s.
if s > 50  display "pass".
if s <= 50 display "fail".
stop run.


working-storage section.
01 s   pic 99.
procedure division.
accept s.
if s > 50 
  display "pass"
else
  display "fail".
stop run.


ตัวอย่างเกี่ยวกับการประมวลผลแฟ้มข้อมูล

ตัวอย่าง : read and write to file
:: อ่านข้อมูลจากแฟ้มมาพิมพ์โดยสมบูรณ์ (ตามหน้า 6 ในหนังสือ)
ก่อนเขียนโปรแกรม ต้องสร้างแฟ้มข้อมูล inf.txt ซึ่งมีขนาด 34 Byte (17 Byte * 2 Records)
Data sample
012345678901234
012345678901234
ผลการ run โปรแกรมข้างล่างนี้ จะสร้างแฟ้ม outf.txt (34 Byte) ซึ่งเหมือนแฟ้ม inf.txt ทุกประการ

รหัสต้นฉบับ
       identification division.
       program-id.  sample.
       author.      burin  rujjanapan.
       installation.  lcct.
       date-written.  20-09-97.
       date-compiler. 20-09-97.
       environment division.
       configuration section.
              source-computer. pc.
              object-computer. pc.
       input-output section.
       file-control.
              select infile assign to disk.
              select outfile assign to disk.
       data division.
       file section.
       fd infile record contains 17 characters
              label record is standdard
              value of file-id "inf.txt".
       01 inrec pic x(17).
       fd outfile record contains 15 characters
              label record is standard
              value of file-id "outf.txt".
       01 outrec pic x(15).
       working-storage section.
       77 num      pic 99 value 0.
       77 flag-end pic x  value "0".
       procedure division.
       initial-para.
              open input infile
                   output outfile.
              read infile at end move "1" to flag-end.
              perform main-para until flag-end = "1".
              close outfile.
              display num.
              stop run.
       main-para.
              add 1 to num.
              write outrec from inrec before advancing 1 line.
              read infile at end move "1" to flag-end.

อ้างอิง

·         http://www.thaiall.com/cobol/indexo.html
·         http://www.com5dow.com
·         http://www.thaigoodview.com
·         http://krusunanta.net
·         http://th.wikipedia.org


ฝากรูป

 

วันพุธที่ 7 สิงหาคม พ.ศ. 2556

โปรแกรมคอมพิวเตอร์

1. โปรแกรมคอมพิวเตอร์ หมายถึง? 

ตอบ คำสั่งคอมพิวเตอร์ชุดหนึ่ง ๆ ที่เขียนขึ้นเป็นภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่ง เช่น ภาษาซี (C) ภาษาโคบอล (COBOL) ภาษาเบสิก (BASIC) หรือ ภาษาแอสเซมบลี (Assembly) ฯ คำ "โปรแกรม" นี้ อาจจะเรียกเป็นชื่ออื่นก็ได้ เช่น ซอฟต์แวร์ (software) หรือ แอพพลิเคชัน (application) โปรแกรมนั้น แบ่งได้เป็นหลายประเภท ประเภทแรกคือประเภทที่ผู้ใช้เขียนขึ้นเองเพื่อให้ตรงกับความต้องการ กับอีกประเภทหนึ่งมีคนทำสำเร็จรูปไว้ขาย เช่น โปรแกรมสำหรับวาดภาพ (graphics) โปรแกรมประมวลผลคำ (word processing) โปรแกรมตารางจัดการ (spreadsheet) นอกจากนั้น ยังมีโปรแกรมระบบ (systems software) ซึ่งเป็นโปรแกรมที่ควบคุมการทำงานของเครื่องคอมพิวเตอร์ มีบางส่วนติดตั้งมาจากโรงงานที่ผลิตเลย และโปรแกรมระบบปฏิบัติการ (operating system) ที่จะทำหน้าที่เหมือนแม่บ้านคอยดูแลให้อุปกรณ์ต่าง ๆ ทำงานให้ประสานกัน สรุปว่า คอมพิวเตอร์สามารถทำงานได้ทุกอย่าง แต่คนเขียนคำสั่งต้องเข้าใจขั้นตอน วิธี (algorithm) และภาษาที่จะใช้เป็นอย่างดี จึงจะสามารถเขียนสั่งเครื่องให้ทำงานได้

2. ขั้นตอนการพัฒนาโปรแกรม มีกี่ขั้นตอน อะไรบ้าง 

ตอบ มี 6 ขั้นตอน ได้แก่

1.การวิเคราะห์ปัญหา 

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

2.การออกแบบโปรแกรม
           การออกแบบขั้นตอนการทำงานของโปรแกรมเป็นขั้นตอนที่ใช้เป็นแนวทางในการลงรหัสโปรแกรม ผู้ออกแบบขั้นตอนการทำงานของโปรแกรมอาจใช้เครื่องมือต่างๆ ช่วยในการออกแบบ อาทิเช่น คำสั่งลำลอง (Pseudocode) หรือ ผังงาน (Flow chart) การออกแบบโปรแกรมนั้นไม่ต้องพะวงกับรูปแบบคำสั่งภาษาคอมพิวเตอร์ แต่ให้มุ่งความสนใจไปที่ลำดับขั้นตอนในการประมวลผลของโปรแกรมเท่านั้น

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

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

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

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

วันพุธที่ 31 กรกฎาคม พ.ศ. 2556

ภาษาคอมพิวเตอร์

ภาษาคอมพิวเตอร์

1. ภาษาคอมพิวเตอร์ หมายถึง?

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

2. ประเภทของภาษาคอมพิวเตอร์ มีกี่ประเภท อะไรบ้าง?

ตอบ  มี 3 ประเภท


ภาษาระดับต่ำ (Low Level Language)
เป็นภาษาที่มนุษย์ทำความเข้าใจได้ยาก ส่วนใหญ่ต้องมความเข้าใจเกี่ยวกับสถาปัตยกรรมคอมพิวเตอร์ และฮาร์ดแวร์เป็นอย่างดีจึงจะสามารถ
เขียนโปรแกรมสั่งงานได้ มีข้อดีในส่วนที่เขียนโปรแกรมควบคุมฮาร์ดแวร์ แต่ละส่วนได้โดยตรงจึงทำงานได้เร็ว แต่ไม่เหมาะที่จะใช้ในการพัฒนาโปรแกรม ตัวอย่างของภาษาระดับต่ำได้แก่ ภาษาเครื่อง (Machine Language) และภาษาแอสเซมบลี้ (Assembly Language) เป็นต้น

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

ภาษาระดับสูง (High Level Language) เป็นภาษาที่ทำความเข้าใจได้ง่าย มีลักษณะ ของการใช้คำสั่งเป็นภาษาอังกฤษ ซึ่งใกล้เคียงกับภาษามนุษย์มาก การสั่งให้คอมพิวเตอร์ทำงาน จะต้องมีการแปลความหมายของคำสั่ง โดยใช้ตัวแปลภาษาทีละชุดคำสั่งที่เรียกว่า Interpreter หรือ แปลครั้งเดียวทั้งโปรแกรมที่เรียกว่า Compiler


          ภาษาระดับสูงถูกออกแบบมาเพื่อให้ใช้งานง่ายและสะดวกสบายมากกว่าภาษาระดับต่ำ โปรแกรมที่เขียนถูกต้องตามกฎเกณฑ์และไวยากรณ์ของภาษาจะถูกแปล (compile) ไปเป็นภาษาระดับต่ำเพื่อให้คอมพิวเตอร์สามารถนำไปใช้งานหรือปฏิบัติตามคำสั่งได้ต่อไป ซอฟต์แวร์สมัยใหม่ส่วนมากเขียนด้วยภาษาระดับสูง แปลไปเป็นออบเจกต์โค้ด (object code) แล้วเปลี่ยนให้เป็นชุดคำสั่งในภาษาเครื่อ

วันพุธที่ 10 กรกฎาคม พ.ศ. 2556

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

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

1. การเขียนรหัสจำลอง (Pseudo Code) หมายถึงอะไร ตัวอย่าง การเขียนรหัสจำลอง

การเขียนรหัสจำลอง หมายถึง เปนเครื่องมือที่ชวยในการแก้ ปัญหาการเขียนจะเปนคําอธิบายที่มีโครงสรางที่ชัดเจน ไมขึ้นกับภาษาใดภาษาหนึ่ง   แตสามารถเปลี่ยนเปนภาษาทางคอมพิวเตอรไดงาย
จะมีการใชขอความที่เปนภาษาอังกฤษหรือภาษาไทยก็ได  ในการแสดงขั้นตอนการแกปัญหา  แตจะมีการใชคําเฉพาะ(reserve  words)  ที่มีอยูในภาษาโปรแกรมมาชวยในการเขียน  โครงของรหัสจําลองจึงมีสวนที่คลายกับการเขียนโปรแกรมมาก  ดังนั้นรหัสจําลองจึงเปนเครื่องมืออีกแบบที่นิยมใชกันมากในการออกแบบโปรแกรม

ตัวอย่าง การเขียนรหัสจำลอง


1)   ใหนับจํานวนนักศึกษาที่อายุ มากกวา หรือเทากับ 18 ปี  และจํานวนนักศึกษาที่อายุนอยกวา 18 ปี
IF student’s age >= 18
         THEN   AdultCounter = AdultCounter + 1
          ELSE   JuniorCounter = JuniorCounter + 1
    ENDIF


2) ใหนับจํานวนชั่วโมงการทํางานที่เกิน 40 ชั่วโมง
IF  hour worked > 40
            THEN OverTimeCounter = OverTimeCounter + 1
      ENDIF

3)  จงเขียนรหัสจําลองหาพื้นที่ของวงกลม
     กําหนดให   สูตรพื้นที่วงกลม    =       3.1415  x รัศมี  x  รัศมี
Area of  cycle
Read radius
Compute Area = 3.1415 * radius * radius
Display Area
End


2. การเขียนผังงาน (Flowchart) หมายถึงอะไร พร้อมสัญลักษณ์ที่ใช้เขียนผังงาน

การเขียนผังงาน หมายถึง การจําลองความคิดใหเปนแผนผังที่เรียกวา Flow chart ชวยใหสามารถแกปญหาไดดีเฉพาะอยางยิ่งปญหาที่ยุงยากซับซอน  และการเขียนผังงานจะใชสัญลักษณ สื่อสารความหมายใหเขาใจตรงกัน ของสถาบันมาตรฐานแหงชาติอเมริกัน : ANSI ไดกําหนดสัญลักษณไวเปนมาตรฐาน  ซึ่งมีรายละเอียดรูปแบบและความหมายที่ควรทราบตามตารางตอไปนี้

ตัวอย่าง สัญลักษณ์ที่ใช้เขียนผังงาน



วันพุธที่ 3 กรกฎาคม พ.ศ. 2556

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

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

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

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


การเลือกเครื่องมือและออกแบบขั้นตอนวิธี


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


การดำเนินการแก้ปัญหา

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




การตรวจสอบและปรับปรุง

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


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