ขอ้ มูล (Data) รหัสข้อมูลในเครื่องไมโครค (American Standard Code for I ขนาด 7 บิต ใช้เกบ็ ข้อมูลจรงิ ขนาด 8 บ และแสดงผลข้อมูลระหว่างอุปกรณ์คอมพ สามารถใช้ได้หลากหลายภาษา (Multi เพียงพอ จึงได้เพ่ิมขนาดจานวนบิตต่อก ได้แก่ รหัส UNI-CODE ใช้ได้มากก ภาษาทัว่ โลก ยกเว้นภาษาจีน ซ่ึงมีคามากกว มาตรฐานเป็นของตวั เอง
คอมพิวเตอร์ ใช้รหัสมาตรฐาน ASCII Information Interchange) ซ่ึงเป็นรหัส บิต เป็นรหัสมาตรฐานที่ใช้เกบ็ ข้อมูล รบั -ส่ง พิวเตอร์ ในปัจจุบันได้มีการปรับเปล่ียนให้ Language) รวมถึงหน่วยความจามีมาก การเก็บรหัสมาเป็นขนาด 16 บิต ท่ีนิยม กว่า 256 ภาษา เพื่อจะครอบคลุมทุก ๆ ว่า 80,000 คา ประเทศจีนจึงต้องมี หนว่ ยที่ 1 ความรพู้ ื้นฐานการเขียนโปรแกรมคอมพิวเตอร์
ตวั แปร (Variables) หมายถึง ช่ือท่ีใช้อ้างอิงข้อมูล โดยไม่จาเป็นต้องรู้ตาแหน่งท่ีเก็บข้อมูลจ เก็บค่าข้อมูลจากหน่วยอินพุตของคอมพ นามาใช้ในการประมวลผล หรอื สาหรบั กา
ลท่ีอยู่ในหน่วยความจาของคอมพิวเตอร์ ริงของคอมพิวเตอร์ ตัวแปรจะใช้เป็นตัว พิวเตอร์ หรือจากการประมวลผล เพ่ือ ารนามาแสดงผลต่อไป
การตั้งชื่อตวั แปร มักจะต้ังชื่อตัวแปรตรงตามความ ทค่ี ลา้ ยคลึงกนั ของภาษาคอมพวิ เตอร์ คือ • ไมซ่ ้ากบั คาสงวน (Reserve word) ซึ่ง ภาษาน่นั ๆ • ไมไ่ ปซา้ กับช่อื ฟงั ก์ชนั หรอื ช่ือตวั แปรชุด • ขน้ึ ต้นด้วยตวั อกั ขระภาษาอังกฤษตวั ถดั ไ • ความยาวของช่อื ตัวแปรท่วั ไปไม่เกิน 6 ถงึ 32 ตวั หรอื มากกว่า (ยาวมากมกั พิม • ไมม่ ีเว้นวรรค ไม่มอี กั ขระพเิ ศษ ยกเว้น ซึ่งส่วนใหญเ่ อาไว้แยกคา • ในบางภาษาการพิมพ์ชอื่ ตวั แปรตัวใหญ (Case Sensitive)
มหมายทับศัพท์ภาษาอังกฤษ โดยมีกฎเกณฑ์ งก็คอื คาส่ัง ประโยคคาสง่ั หรือคาสง่ั เทียมของ ดตัวอน่ื ๆ ไปเป็นตัวอกั ษรหรือตัวเลขได้ ตัวอักขระ แตม่ บี างภาษากาหนดช่ือความยาวได้ มพผ์ ดิ ง่ายและต้องใช้หน่วยความจามากข้ึน) นขีดเสน้ ใต้ _ ญต่ วั เล็กจะถือว่าไปคนละตัวกัน หนว่ ยท่ี 1 ความรพู้ ื้นฐานการเขียนโปรแกรมคอมพวิ เตอร์
การประกาศตวั แปร (Va สามารถกาหนดขอบเขตได้ 2 ลกั ษณะ คอื • Global Variable • Local Variable
ariable Declaration) อ หนว่ ยท่ี 1 ความร้พู ื้นฐานการเขยี นโปรแกรมคอมพวิ เตอร์
คา่ คงท่ี (Constants) คา่ คงท่ี (Constants) เป็นนิพจน เปลยี่ นแปลงคา่ ไดอ้ ีก การอ้างถึงข้อมูลในห สามารถกาหนดชื่อข้อมูลเพื่อใช้อ้างถึงไ เปลีย่ นแปลงคา่ เรยี กว่าค่าคงที่ (Constan เป็นตัวแปรชนิดหนึ่งเรียกว่าตัวแปรสุดท้าย การเปล่ียนแปลงค่าได้อีก
น์ (Expressions) ที่เป็นคา่ คงท่ี ไม่มีการ หนว่ ยความจานอกจากใช้ตัวแปรแล้ว เรา ได้ โดยข้อมูลน้ีจะเป็นข้อมูลที่ไม่มีการ nt) ในบางโปรแกรมภาษาเรียกค่าคงท่ีนี้ ย (Final Variable) คือ ตัวแปรท่ีไม่มี หน่วยที่ 1 ความรูพ้ น้ื ฐานการเขยี นโปรแกรมคอมพิวเตอร์
คา่ คงท่ี (Constants) ตวั อยา่ ง การคานวณหาค่าพื้นท่ีของวง รูปทรงกระบอก สูตรท่ีใช้ในการคานวณก ของโปรแกรมนี้ จึงต้องมีการประกาศและ พิมพ์ เพราะการพิมพ์ค่าตัวเลขหลาย ๆ ห เป็นค่าคงทีไ่ ว้ รูปแบบของการประกาศคา่ คง • ในภาษาเบสกิ ใชค้ าส่ัง Const PI = 3.1 • ในภาษาซีใชก้ ารประกาศ Macro ในส่ว #define PI 3.1415926 หรอื ใช้คาส่ังประกาศค่าคงท่ี const float PI = 3.1415926f เป็นตน้
งกลม หรือเส้นรอบวง หรือปริมาตรของ ก็ล้วนแล้วแต่จะต้องใช้ค่า π ดังน้ันในส่วนต้น ะกาหนดช่ือของค่าคงท่ีน้ีไว้ เพ่ือสะดวกในการ หลักจะมีโอกาสผิดพลาดได้ง่าย จึงได้ประกาศ งท่ีจะข้ึนอยู่กบั โปรแกรมภาษานัน้ ๆ เช่น 1415926 As Single วนหวั โปรแกรม หน่วยที่ 1 ความรพู้ ้นื ฐานการเขียนโปรแกรมคอมพวิ เตอร์
ตัวอยา่ งชนดิ ข้อมูล (Data T แบ่งได้เปน็ 4 กลุ่ม ดังน้ี • เลขจานวนเตม็ • เลขจานวนทศนยิ ม • แบบตวั อักขระ/ขอ้ ความ • ชนิดขอ้ มลู อื่น ๆ
Type) ในโปรแกรม VB 2005 หน่วยท่ี 1 ความรพู้ ื้นฐานการเขยี นโปรแกรมคอมพิวเตอร์
ตัวดาเนนิ การ (Operato คือ เคร่ืองหมายการกระทาที่ใ กระทา (Operand) อาจเป็นการกระท หนง่ึ ตวั ข้ึนอยู่กบั ตวั ดาเนินการ
or) ใช้สาหรับบอกการกระทาระหว่างตัวถูก ทาระหว่างตัวถูกกระทา 2 ตัว หรือมีเพยี ง หนว่ ยที่ 1 ความร้พู ้นื ฐานการเขียนโปรแกรมคอมพวิ เตอร์
ตัวดาเนินการทางคณติ ศา ตัวดาเนนิ การพนื้ ฐาน ได้แก่ เคร่อื งหมาย • บวก (+), • ลบ (-), • คณู (*), • หาร (/), • DIV การหารโดยคิดเฉพาะจานวนเต็ม • MOD การหารโดยคิดเฉพาะเศษที่ได
าสตร์ (Arithmetic Operators) ย มท่ีไดจ้ ากการหาร และ ด้จากการหาร หน่วยท่ี 1 ความรู้พน้ื ฐานการเขียนโปรแกรมคอมพิวเตอร์
ตัวดาเนนิ การเปรยี บเทยี บ เครื่องหมายเปรยี บเทียบ =, == <>, != < <= > >=
บ (Comparative Operators) เครอ่ื งหมาย เทา่ กับ ไมเ่ ท่ากับ น้อยกวา่ นอ้ ยกวา่ หรอื เท่ากับ มากกว่า มากกวา่ หรอื เทา่ กบั หนว่ ยที่ 1 ความร้พู ้ืนฐานการเขียนโปรแกรมคอมพวิ เตอร์
ตรรกะพ้นื ฐาน • NOT จะมีเอาต์พตุ เป็นตรงก • AND จะมีเอาต์พตุ เปน็ ลอจิก • AND จะมีเอาต์พุตเปน็ ลอจิก • OR จะมเี อาต์พุตเปน็ ลอจิก • OR จะมเี อาต์พตุ เปน็ ลอจกิ • X-OR จะมีเอาตพ์ ุตเปน็ ลอจิก • X-OR จะมีเอาตพ์ ุตเปน็ ลอจิก • X-NOR จะมเี อาต์พตุ ตรงกนั ข้า
กันขา้ มกบั อินพุตเสมอ ก “0” เมอื่ มอี นิ พตุ ใดเป็นลอจกิ “0” ก “1” เมื่อ มีทุกอนิ พุตเปน็ ลอจิก “1” ก “0” เม่อื มที ุกอินพุตเป็นลอจิก “0” ก “1” เมอื่ มอี ินพุตใดเป็นลอจกิ “1” ก “0” เมอ่ื อนิ พุตทง้ั สองเหมอื นกัน ก “1” เมอื่ อนิ พุตท้งั สองต่างกัน ามกับ X-OR หนว่ ยที่ 1 ความร้พู ืน้ ฐานการเขยี นโปรแกรมคอมพวิ เตอร์
ตัวดาเนินการทางตรรกศ a b a' b' a FALSE FALSE TRUE TRUE FA FALSE TRUE TRUE FALSE FA TRUE FALSE FALSE TRUE FA TRUE TRUE FALSE FALSE T
ศาสตร์ (Logical Operators) a.b a'.b a.b' a'.b' ALSE FALSE FALSE TRUE ALSE TRUE FALSE FALSE ALSE FALSE TRUE FALSE TRUE FALSE FALSE FALSE หน่วยท่ี 1 ความร้พู ืน้ ฐานการเขยี นโปรแกรมคอมพวิ เตอร์
กฎการกระทาทางตรรกะ AND OR A.0 = 0 A+0 = A A.1 = A A+1 = 1 A.A = A A+A = A A.A’ = 0 A+A’ = 1
ะ X-OR X-NOR A + 0 = A (A + 0)’ = A’ A + 1 = A’ (A + 1)’ = A A + A = 0 (A + A)’ = 1 A + A’ = 1 (A + A’)’ = 0 หนว่ ยที่ 1 ความรูพ้ นื้ ฐานการเขียนโปรแกรมคอมพวิ เตอร์
รปู แบบของการเขียนตัวดาเนินการ ในโปรแกรม Excel • A.B เขยี นเปน็ A AND B • A+B เขยี นเป็น A OR B • A’ เขยี นเป็น NOT(A) • (A.B)’ เขียนเปน็ NOT(A AND B) • (A+B)’ เขยี นเป็น NOT(A OR B) • A’.B เขียนเป็น NOT(A) AND B • A+A’.B เขียนเปน็ A OR (NOT(A) A
รทางตรรกศาสตรใ์ นภาษาคอมพวิ เตอร์ และ ใน Excel เขียนเปน็ =AND(A,B) ใน Excel เขยี นเปน็ =OR(A,B) ใน Excel เขียนเป็น =NOT(A) ใน Excel เขียนเป็น =NOT(AND(A,B)) ใน Excel เขยี นเป็น =NOT(OR(A,B)) ใน Excel เขยี นเป็น =AND(NOT(A),B) AND B) ใน Excel เขียนเป็น =OR(A,AND(NOT(A),B)) หน่วยท่ี 1 ความรพู้ ้ืนฐานการเขียนโปรแกรมคอมพวิ เตอร์
นพิ จน์ (Expressions) คือ กลุ่มของตัวถูกดาเนินกา ดาเนินการหรือเครื่องหมายการกระท ด้วยกัน ตัวถูกกระทาอาจเป็นคา่ คงที่หรอื
รที่นามาทาการกระทากัน โดยใช้ตัว ทาในการเชื่อมตัวถูกกระทาแต่ละตัวเข้า อเปน็ ตัวแปรก็ได้ หน่วยท่ี 1 ความรู้พืน้ ฐานการเขียนโปรแกรมคอมพวิ เตอร์
ลาดบั การคานวณหรือลา ลาดบั ความสาคัญของตวั ดาเนนิ การ มีดงั 1. กระทาการภายในเครื่องหมายวงเลบ็ 2. NOT, เครอ่ื งหมายตดิ ลบ (เชน่ เลขย 3. AND, *, /, DIV, MOD 4. OR, +, - 5. เครื่องหมายเปรยี บเทียบ
าดับความสาคญั (Priority) งนี้ บกอ่ น ยกกาลังติดลบ) หน่วยท่ี 1 ความรู้พื้นฐานการเขียนโปรแกรมคอมพิวเตอร์
ตัวอย่าง การเขียนนพิ จน์โดยใ • การเขยี นนิพจน์ ให้ผลลพั ธ์เปน็ จริง สามารถเขียนได้ดงั น้ี (Age >= 20) And (Age <= ถ้าเปน็ ภาษาซใี หเ้ ปลีย่ น And เ • การเขยี นนพิ จน์ ให้ผลลัพธเ์ ป็นจรงิ 20 ปี หรือ มากกว่า 60 ปี สามารถ (Age < 20) Or (Age > 60) ถ้าเป็นภาษาซีใหเ้ ปลย่ี น Or เป
ใชต้ วั ดาเนนิ การเปรียบเทียบและตรรกะ เม่อื อายุ (Age) อยู่ระหวา่ ง 20 - 60 ปี = 60) เป็น && โดยกาหนดเงอ่ื นไขใหอ้ ายุ (Age) น้อยกว่า ถเขยี นได้ดังน้ี ) ปน็ || หน่วยที่ 1 ความรู้พน้ื ฐานการเขยี นโปรแกรมคอมพวิ เตอร์
ตัวอย่าง การเขยี นนิพจน์โดยใ การเขียนนิพจน์ ให้ผลลัพธ์เป็น ‘1’ ถงึ ‘5’ หรอื Ch มคี า่ เปน็ 27 • ในภาษาเบสิก มวี ิธกี ารเขยี นนิพจน์ได – Not((Ch >= ‘1’ And Ch <= ‘5’) O – ((Ch < ‘1’ Or Ch > ‘5’) And Ch < • และในภาษาซีหรอื ภาษาจาวา สามาร – !((Ch >= ‘1’ && Ch <= ‘5’) || Ch – ((Ch < ‘1’ || Ch > ‘5’) && Ch <>
ใชต้ วั ดาเนนิ การเปรยี บเทียบและตรรกะ นเท็จ เม่ือตัวแปร Ch มีค่าอยู่ระหว่าง ด้ 2 แบบคอื Or Ch = 27) <> 27) รถเขียนนพิ จนไ์ ดด้ งั นี้ h == 27) 27) หน่วยที่ 1 ความรพู้ น้ื ฐานการเขียนโปรแกรมคอมพิวเตอร์
ตัวอย่าง การเขียนนพิ จน์โด จากสมการเสน้ ตรง ax2 + bx + c = สามารถเขียนนพิ จน์เพือ่ คานว – X1 = (-b+sqrt(b*b+4*a*c))/(2* – X2 = (-b-sqrt(b*b+4*a*c))/(2*
ดยใชต้ วั ดาเนินการทางคณติ ศาสตร์ =0 วณหาค่า x จะได้ดังนี้ *a) *a) หนว่ ยท่ี 1 ความร้พู น้ื ฐานการเขียนโปรแกรมคอมพิวเตอร์
จบการนาเสนอ บท ความรู้พ้นื ฐานก คอมพ
ทที่ 1 การเขียนโปรแกรม พิวเตอร์ จดั ทาและเรียบเรยี งโดย จฑุ าวฒุ ิ จันทรมาลี วนั ที่ 9 ม.ี ค. 59
1 หนว่ ยการเรยี นรูท้ ่ี 1 ความรเู้ บอื้ งตน้ เกี่ยวกบั การเขียนโปรแกรมคอมพิวเตอร์
2 คอมพวิ เตอรเ์ ปน็ เพยี งแค่อุปกรณท์ ่ีทางานตามคาส่ังทร่ี ับมาจากผใู้ ช้ ดงั นน้ั ผูใ้ ชจ้ ึงจาเปน็ ตอ้ งบอก คอมพวิ เตอร์ว่าตอ้ งการให้เครือ่ งคอมพวิ เตอร์ทาอะไร โดยการสง่ั งานให้เคร่อื งคอมพวิ เตอรท์ างานทต่ี ้องการ วิธกี ารส่งั งานดังกลา่ วตอ้ งอาศัยโปรแกรม ซึ่งก็คอื กลุ่มของโปรแกรมหรือกลุ่มของคาสง่ั โดยใช้ภาษาต่างๆ ใน การเขยี นโปรแกรมข้ึนมา ซง่ึ มมี ากมาย เชน่ ภาษา Fortran , Cobol , Lisp , PL / 1 , Basic , Pascal , C , Ada , C++ , Perl , Java เป็นต้น แต่ภาษาทน่ี ามาให้นักเรยี นเรียนในวิชาการเขยี นโปรแกรมภาษา C คอื โปรแกรมภาษา C นั้นเอง ซ่งึ เปน็ รากฐานทีด่ ที ี่สุดสาหรับผเู้ รมิ่ ต้นการเขยี นโปรแกรมคอมพิวเตอร์ รวมไปถงึ การใชส้ ญั ลักษณ์ Flowchart แทนคาสงั่ โดยไมอ่ งิ ถึงคาสง่ั ในภาษาใดภาษาหนงึ่ ช่วยใหก้ ารเขียนโปรแกรม ง่ายขึ้น ก่อนจะเข้าสู่การเขยี นโปรแกรมภาษา C นักเรียนควรมคี วามร้พู ืน้ ฐานเกี่ยวกับการเขยี นโปรแกรมก่อน โดยมีเน้อื หาตา่ งๆ ดังน้ี 1. องคป์ ระกอบของระบบคอมพิวเตอร์ โดยทว่ั ไปการนาคอมพิวเตอร์มาช่วยในการทางานตา่ ง ๆ นัน้ ถ้าเฉพาะตวั เครอ่ื งและอปุ กรณห์ รอื \"ฮาร์ดแวร์\"(Hardware) นั้น จะไม่สามารถทางานได้ เพราะเครือ่ งยงั ไม่มสี ง่ิ ที่จะมาจัดการหรอื ควบคุมระบบ ตา่ ง ๆ ดงั น้ันจงึ ต้องมโี ปรแกรมทีใ่ ชค้ วบคุมระบบและใชง้ าน ซ่ึงเราเรียกวา่ \"ซอฟตแ์ วร์\"(Software) แต่ เนอ่ื งจากคอมพิวเตอรเ์ ปน็ ส่ิงทไ่ี ม่มีชวี ิตจิตใจเราจึงต้องพึง่ พาบคุ ลากร หรือ\"พีเพลิ แวร์\" (Pepleware) มาสงั่ การ ให้คอมพวิ เตอรท์ างานตามกระบวนการ (Procedure) ดงั น้ันสรปุ ได้ว่าองคป์ ระกอบท่จี ะทาใหเ้ คร่ือง คอมพวิ เตอรท์ างานได้นัน้ ประกอบด้วย 5 สว่ น คือ 1.1 ฮารด์ แวร์ (Hardware) ส่งิ ท่ีมองเหน็ และจับต้องสัมผสั ได้ท้งั หมดทเ่ี ก่ียวขอ้ งกบั คอมพวิ เตอร์ ฮารด์ แวร์จะไมส่ ามารถทางาน ดว้ ยตัวเองเดย่ี ว ๆ ได้ จะตอ้ งนามาลงหรอื ตดิ ต้ังโปรแกรมหรอื ซอฟตแ์ วรท์ ่ีเขียนขน้ึ เพอื่ ให้ทางานได้ 1.2 ซอฟตแ์ วร์ (Software) ซอฟตแ์ วร์หรอื โปรแกรมคอมพิวเตอร์หรอื ชุดคาส่งั ท่ีเขียนขนึ้ เป็นองคป์ ระกอบทสี่ าคัญประการท่สี อง ซ่งึ กค็ อื ลาดับขั้นตอนของคาสัง่ ทจ่ี ะสั่งงานใหฮ้ ารด์ แวรท์ างาน เพ่อื ประมวลผลขอ้ มูลให้ไดผ้ ลลพั ธต์ ามความ ต้องการของการใชง้ าน ซอฟต์แวร์แบง่ ออกเปน็ 2 ประเภทคือ 1. ซอฟตแ์ วรร์ ะบบปฏิบัติการ (Operating System Software-OS)หมายถงึ ซอฟต์แวร์หรือ โปรแกรมที่ควบคมุ การทางานทงั้ หมดของเคร่อื ง ได้แก่ Windows , Dos , Linux , Unix , Mac 2. ซอฟตแ์ วร์ประยุกต์ (Application Software)หมายถึงโปรแกรมทเี่ ขยี นขน้ึ มาเพอื่ สงั่ ให้เครื่อง คอมพิวเตอรท์ างานเฉพาะด้าน เช่น โปรแกรมระบบบัญชี โปรแกรมออกแบบ โปรแกรมสาเร็จรูปต่างๆ
3 1.3 ข้อมูล (Data) ข้อมูล เปน็ องค์ประกอบทีส่ าคัญอีกประการหน่ึงของระบบสารสนเทศ อาจจะเป็นตวั ชี้ความสาเรจ็ หรอื ความล้มเหลวของระบบได้ เนื่องจากจะตอ้ งมีการเกบ็ ขอ้ มลู จากแหล่งกาเนิด ข้อมลู จะต้องมีความถกู ต้อง มกี ารกลน่ั กรองและตรวจสอบแลว้ เท่านั้นจงึ จะมีประโยชน์ 1.4 บุคลากร หรอื พีเพิลแวร์ (People ware) บคุ ลากรเป็นองค์ประกอบสาคัญในความสาเรจ็ ของระบบสารสนเทศ บคุ ลากรมีความรู้ ความสามารถทางคอมพวิ เตอรม์ ากเทา่ ใด โอกาสทจี่ ะใช้งานระบบสารสนเทศและระบบคอมพวิ เตอร์ได้เตม็ ศกั ยภาพและคุ้มค่าย่ิงมากขึน้ เทา่ นน้ั บุคลากรท่ีเกีย่ วขอ้ งกบั คอมพวิ เตอร์มหี ลายประเภท ซง่ึ แต่ละประเภทมี หนา้ ทแี่ ละความรับผดิ ชอบแตกตา่ งกันไปดังน้ี 1. ผ้ใู ชง้ านคอมพวิ เตอร์ (User) หมายถึง ผ้ใู ชง้ านคอมพวิ เตอรท์ ่ัวไป สามารถทางานตามหน้าท่ใี น หนว่ ยงานน้ัน ๆ เช่น พิมพง์ าน ป้อนข้อมูลเขา้ เครือ่ งคอมพิวเตอร์ การสง่ จดหมายอิเล็กทรอนิกส์ เป็นตน้ 2. ผู้ดูแลและซอ่ มบารุงเครื่องคอมพวิ เตอร์ (Supporter or Technician) หมายถึง ผูค้ อยดูแล ตรวจสอบสภาพของเครือ่ งคอมพิวเตอรเ์ พ่อื ใหม้ สี ภาพพร้อมที่จะทางานได้ตลอดเวลา กลมุ่ น้ีจะเรยี นรู้เทคนคิ การดูแล รักษา การซ่อมแซม การตอ่ เชื่อม ตลอดจนการใชง้ านโปรแกรมตา่ ง ๆ ค่อนข้างดี 3. ผ้เู ขียนโปรแกรมคอมพิวเตอร์ (Programmer :โปรแกรมเมอร์) หมายถึง ผ้เู ขยี นโปรแกรม ตามที่ผู้ออกแบบและผู้วเิ คราะหร์ ะบบคอมพวิ เตอร์เปน็ ผู้กาหนด เพื่อใหไ้ ด้โปรแกรมทต่ี รงตามวตั ถุประสงคก์ าร ใชง้ านในองค์กร กลุ่มนี้จะศึกษามาทางดา้ นภาษาคอมพิวเตอร์โดยเฉพาะ สามารถเขียนคาสง่ั คอมพิวเตอร์โดย ภาษาต่างๆ ได้ และเป็นนกั พฒั นาโปรแกรมให้คนอนื่ เอาไปใช้ 4. ผอู้ อกแบบและวเิ คราะหร์ ะบบคอมพิวเตอร์ (System Analysis) หมายถึง ผทู้ มี่ หี น้าที่ พจิ ารณาวา่ องค์กรควรจะใชค้ อมพวิ เตอรใ์ นลักษณะใดจงึ จะเหมาะสม เกดิ ประโยชนส์ งู สมุด เป็นผู้ออกแบบ โปรแกรมกอ่ นส่งงานไปให้โปรแกรมเมอร์ทางานในสว่ นต่อไป 5. ผบู้ ริหารระบบคอมพิวเตอร์ (System Manager or Administrator) คือ ผ้ทู ม่ี หี นา้ ท่บี รหิ าร และดูแลทรพั ยาการทุกชนิดทเ่ี ก่ียวกับคอมพิวเตอร์ให้เกดิ ประโยชน์สงู สดุ 1.5 กระบวนการทางาน (Documentation/Procedure) เปน็ ขน้ั ตอนการทางานเพอ่ื ให้ได้ ผลลพั ธ์หรอื ขอ้ สนเทศจากคอมพิวเตอร์ ในการทางานกบั คอมพิวเตอรจ์ าเปน็ ทจี่ ะต้องให้ผู้ใช้เขา้ ใจข้นั ตอนการทางาน ต้องมีระเบยี บปฏิบตั ิใหเ้ ป็นแบบเดียวกนั
4 2. ภาษาคอมพวิ เตอร์ (Computer Programming Language) ภาษาเป็นตวั แทนการส่อื สารระหว่าง 2 ส่งิ หรือหลายๆส่ิงเพอ่ื ใหเ้ กิดความหมายและความเข้าใจตรงกัน เชน่ มนษุ ย์ใชค้ าพูดส่อื สารกนั กถ็ ือวา่ คาพดู น้นั เป็นภาษาหรอื อาจใชม้ อื ในการสอื่ สารระหวา่ งคนทเี่ ป็นใบ้พดู ไม่ได้หรอื แมแ้ ต่ดนตรีก็ถอื วา่ เปน็ ภาษาชนิดหนึ่งที่เปน็ สากลเพราะคนชาตใิ ดมาฟงั ก็จะใหค้ วามรสู้ กึ เดียวกัน ในทางคอมพวิ เตอร์นัน้ กต็ อ้ งทาการพัฒนาภาษาที่จะสอ่ื สารระหวา่ งมนุษยก์ ับเคร่ืองคอมพิวเตอรแ์ ต่ ดว้ ยเหตทุ ่ีเครอ่ื งคอมพวิ เตอรเ์ ป็นอปุ กรณ์อิเล็กทรอนกิ ส์ซ่ึงมีเฉพาะวงจรการเปิดและปิดทาใหเ้ ครอ่ื ง คอมพิวเตอรส์ ื่อสารโดยใช้เลขฐานสองเทา่ นัน้ เรียกภาษาทใ่ี ชเ้ ฉพาะเลขฐานสองในคอมพวิ เตอรว์ า่ ภาษาเครือ่ ง (Machine Language) การท่ีมนุษยจ์ ะเรยี นรู้ภาษาเคร่อื งนนั้ ยากมากเพราะนอกจากจะต้องศึกษาถงึ อุปกรณ์ น้นั อีกด้วยซึง่ จะทาใหก้ ารใชง้ านคอมพวิ เตอรเ์ ป็นเร่อื งยุ่งยากจงึ มีผู้คิดค้นภาษาคอมพวิ เตอร์ขึน้ เพ่อื ทาหนา้ ท่ีใน การติดตอ่ สื่อสารระหวา่ งเครอ่ื งคอมพวิ เตอร์กับมนุษย์โดยผู้ใช้จะสามารถตดิ ต่อกบั เคร่ืองคอมพวิ เตอร์โดยผา่ น ทางภาษาคอมพิวเตอร์ (Computer Programming Language) 2.1 ชนิดของภาษาคอมพิวเตอร์ จากการทม่ี ีภาษาจานวนมากมายน้ันทาใหต้ ้องกาหนดระดบั ของภาษาคอมพวิ เตอร์เพ่ือชว่ ยในการแบ่ง ประเภทของภาษาเหลา่ น้นั การกาหนดวา่ เป็นภาษาระดบั ตา่ หรือภาษาระดับสูงจะข้นึ อยกู่ บั ภาษาน้นั ใกล้เคียง กับภาษาเครอ่ื งคอมพวิ เตอร์ (ใกล้เคยี งกบั รหัส 0 และ 1 เรยี กว่า ภาษาระดับต่า) หรือวา่ ใกลเ้ คียงกบั ภาษาท่ีมนุษย์ใช้ (ใกลเ้ คียงกับภาษาอังกฤษเรยี กวา่ ภาษาระดบั สูง) 1. ภาษาระดบั ต่า (Low Level Language) ได้แก่ 1.1ภาษาเคร่ือง (Machine Language) เป็นภาษาระดับตา่ ทสี่ ดุ เพราะใชเ้ ลขฐานสองแทนข้อมูล (0 และ 1)และคาสงั่ ตา่ งๆทาใหก้ ารเขยี นโปรแกรมยุ่งยากมาก ตวั อย่าง แสดงคาสัง่ ของภาษาเครอ่ื งมีดังน้ี ถา้ เราต้องการสง่ั ให้เคร่อื งทางานตามคาสัง่ 9 + 3 แสดงได้ดงั น้ี การบวกแทนด้วยรหสั 10101010 เลข 9 เปลย่ี นเป็นเลขฐานสอง 00001001 เลข 3 เปลย่ี นเปน็ เลขฐานสอง 00000011 ดังน้ัน คาส่ัง 9 + 3 เขยี นเปน็ ภาษาเคร่ืองไดด้ ังนี้ 00001001 10101010 00000011 ---------> ภาษาเคร่ือง 9 + 3 --------> ภาษามนษุ ย์และภาษาคอมพิวเตอร์ 1.2 ภาษาแอสเซมบลี (Assembly Language) ภาษาแอสเซมบลใี ชร้ หสั เปน็ คาแทนคาสัง่ ภาษาเคร่อื ง ทาให้นกั เขยี นโปรแกรมสามารถเขียนโปรแกรมได้ง่ายขน้ึ คอื ใช้สญั ลกั ษณแ์ ทนเลข 0 และ 1 ของภาษาเครื่องซ่งึ สญั ลกั ษณ์ที่ใช้จะเป็นคาสงั่ สนั้ ๆ ทาให้การเขียนโปรแกรมงา่ ยขนึ้ กว่าภาษาเคร่ือง แต่กย็ งั คงยงุ่ ยากมากในการ จาคาสัง่ ทั้งหมด
5 ตัวอย่างที่ แสดงคาสง่ั ของภาษาแอสเซมบลีมดี งั นี้ ถา้ เราต้องการสงั่ ใหเ้ ครอื่ งทางานตามคาสงั่ 9 + 3 แสดงได้ดังน้ี MOV AX, 9 MOV BX, 3 ADD AX, BX 2. ภาษาระดบั สูง (High Level Language) ภาษาระดบั สงู จะใช้คาในภาษาอังกฤษแทนคาส่งั ตา่ งๆรวมทง้ั สามารถใช้นพิ จน์ทางคณิตศาสตรไ์ ด้ด้วย ทาใหน้ กั เขียนโปรแกรมสามารถใชเ้ วลามงุ่ ไปในการศกึ ษาถงึ ทางแก้ปญั หาเทา่ นนั้ ไมต่ อ้ งเป็นกงั วลวา่ คอมพิวเตอร์จะทางานอยา่ งไรอีกตอ่ ไปภาษาระดับสูงนถ้ี ือวา่ เปน็ ภาษายุคที่สาม (third-generation language) ซง่ึ ทาใหเ้ กิดการประมวลผลข้อมูลเพมิ่ มากขน้ึ และมีผู้หันมาใชค้ อมพิวเตอรก์ ันมากขึ้น 3. ภาษาระดบั สูงมาก (Very high-level Language) เป็นภาษายคุ ที่ 4 (fourth-generation language) หรือ 4GLs จะเปน็ ภาษาทใ่ี ช้เขียนโปรแกรมได้ส้ัน กวา่ ภาษาในยุคก่อนๆการทางานบางอยา่ งสามารถใชเ้ พียง 5 ถงึ 10 บรรทดั เทา่ น้ันในขณะที่ถา้ เขียนด้วยภาษา อาจตอ้ งใชถ้ งึ 100 บรรทดั โดยพน้ื ฐานแล้วภาษาในยุคท่ี 4 นี้มคี ณุ สมบตั ทิ ีแ่ ยกจากภาษายุคกอ่ นๆอยา่ งชัดเจน กล่าวคอื ผู้เขยี นโปรแกรมเพยี งแต่กาหนดวา่ ตอ้ งการใหโ้ ปรแกรมทาอะไรบ้างก็สามารถเขียนโปรแกรมได้ทันที โดยไมต่ อ้ งทราบว่าทาได้อยา่ งไรทาให้การเขยี นโปรแกรมสามารถทาไดง้ ่ายและรวดเร็ว ภาษาในยคุ ที่ 4 นีย้ ังมภี าษาที่ใชส้ าหรับเรยี กดขู อ้ มลู จากฐานข้อมูลไดเ้ รยี กวา่ ภาษาเรียกค้นข้อมูล (query language) การแสดงรายงานจากฐานข้อมลู ภาษาเรียกค้นขอ้ มลู ท่เี ป็นมาตรฐานเรยี กวา่ SQL (Structured Query Language) 4. ภาษาธรรมชาติ (Nature Language) เป็นภาษายคุ ที่ 5 (fifth generation language) หรอื 5GLs ธรรมชาติ หมายถึง ธรรมชาตขิ อง มนุษยค์ อื ไม่ต้องสนใจถึงคาสง่ั หรอื ลาดบั ของขอ้ มลู ที่ถกู ต้องผใู้ ช้เพยี งแต่พิมพส์ ิ่งทีต่ อ้ งการลงในเคร่อื ง คอมพิวเตอรเ์ ปน็ คาหรอื ประโยคตามทีผ่ ้ใู ชเ้ ขา้ ใจซงึ่ จะทาให้มรี ปู แบบของคาสั่งหรอื ประโยคที่แตกต่างกนั ออกไปได้มากมายเพราะผใู้ ช้แตล่ ะคนอาจจะใช้ประโยคตา่ งกันใชค้ าศัพทต์ ่างกนั หรือแม้กระทง่ั บางคนอาจจะใช้ ศัพท์แสลงกไ็ ด้คอมพิวเตอร์จะพยายามแปลคาหรอื ประโยคเหลา่ นั้นตามคาสัง่ แต่ถา้ ไมส่ ามารถแปลใหเ้ ข้าใจได้ก็ จะมคี าถามกลับมาถามผู้ใชเ้ พ่อื ยนื ยนั ความถูกตอ้ งภาษาธรรมชาติจะใช้ระบบฐานความรู้ (knowledge base system) ช่วยในการแปลความหมายของคาสั่งต่างๆ 5. ภาษาโปรแกรมเชงิ วัตถุ (Object-Oriented Programming Language) นกั เขยี นโปรแกรมบางคนคดิ ว่าการเขียนโปรแกรมขนาดใหญน่ ้ันบางคร้งั ก็เปน็ งานที่หนักและเสียเวลา มากจงึ ได้พยายามคิดหาวธิ ที จี่ ะทาให้การเขียนโปรแกรมนน้ั ง่ายขน้ึ และสามารถเขยี นได้อย่างรวดเร็วทาให้เกิด เทคนคิ การโปรแกรมเชงิ วตั ถุ (Object-Oriented Programming) หรอื OOP เพ่อื ช่วยลดความยุ่งยากของการ เขียนโปรแกรมโปรแกรมเชงิ วัตถทุ ่ไี ด้รบั ความนิยมสูงได้แก่ JAVA , Visual Basic , C++
6 2.2 การเลอื กใชภ้ าษาคอมพวิ เตอร์ เนื่องจากในปจั จบุ ันทุกๆปีจะมีภาษาคอมพวิ เตอร์เกดิ ขึน้ มากมายและภาษาต่างๆจะมจี ดุ ดแี ละจุดด้อย แตกตา่ งกันไปผใู้ ช้จงึ จาเป็นตอ้ งทาการคดั เลือกภาษาทจ่ี ะนามาใช้งานอย่างระมดั ระวังเนื่องจากเมือ่ ศึกษาและ พฒั นาซอฟต์แวร์ด้วยภาษาใดภาษาหนึ่งแลว้ การเปล่ยี นไปใชภ้ าษาอน่ื ในภายหลังจะเป็นเรอ่ื งทย่ี ากลาบากอย่าง ยง่ิ ทง้ั ในเรอ่ื งของคา่ ใชจ้ ่ายและเวลาทีต่ ้องสูญเสียไปรวมทั้งปัญหาของบุคลากรทีต่ ้องศึกษาหาความชานาญใหม่ อีกดว้ ย ในการเลือกภาษาคอมพวิ เตอรท์ จ่ี ะนามาใชส้ ิ่งท่คี วรพิจารณาคอื 1. ในหนว่ ยงานหน่ึงๆควรจะใชภ้ าษาคอมพวิ เตอรภ์ าษาเดียวกนั เพราะการดูแลรกั ษาซอฟต์แวรท์ พ่ี ัฒนาข้ึน ตลอดจนการจัดหาบคุ ลากรจะกระทาให้งา่ ยกว่า 2. ในการเลอื กภาษาควรเลอื กโดยดูจากคุณสมบตั ิหรอื ขอ้ ดีของภาษานนั้ ๆ เปน็ หลัก 3. ถา้ โปรแกรมทีเ่ ขียนขึน้ น้ันต้องนาไปทางานบนเครอ่ื งตา่ งๆกันควรเลือกภาษาท่ีสามารถใชง้ านได้บนทกุ เคร่ือง เพราะจะทาใหเ้ ขียนโปรแกรมเพียงคร้งั เดยี วเทา่ นัน้ 4. ผู้ใช้ควรจากัดภาษาคอมพวิ เตอรท์ ีจ่ ะใชไ้ มค่ วรติดต้งั ตัวแปลภาษาคอมพวิ เตอร์ทุกภาษาบนเครือ่ งทกุ เครือ่ ง 5. ภาษาคอมพิวเตอร์ท่ีเลือกใช้จะถกู จากัดโดยนกั เขียนโปรแกรมท่ีมีอยเู่ พราะควรใชภ้ าษาท่ีมผี ้รู อู้ ยู่บ้าง ตารางแสดงตวั อย่างภาษาคอมพวิ เตอรแ์ ละการใชง้ าน ภาษาคอมพวิ เ การใช้งาน ตอร์ เพ่อื ใชส้ อนวชิ าการเขียนโปรแกรมสาหรบั ผูเ้ ริ่มศกึ ษาการเขยี นโปรแกรมภาษาคอมพิวเตอร์ BASIC เป็นภาษาสาหรบั ใช้ในงานธุรกจิ บนเครอ่ื งขนาดใหญ่ COBOL เปน็ ภาษาระดับสูงภาษาแรกของโลกใชส้ าหรับงานด้านคณิตศาสตรว์ ทิ ยาศาสตรว์ ิศวกรรมศาสตรท์ ่ตี ้องการการ FORTRAN คานวณมากๆ เพ่อื ใชส้ อนวิชาการเขยี นโปรแกรมสาหรบั ผู้เริ่มศึกษาการเขยี นโปรแกรมภาษาคอมพวิ เตอร์ Pascal เป็นภาษาระดบั สูง ใช้สอนวชิ าการเขยี นโปรแกรมสาหรบั ผเู้ ร่ิมศกึ ษาการเขียนโปรแกรมภาษาคอมพวิ เตอร์ C สาหรบั ผู้ผลิตซอฟตแ์ วร์แบบ OOP C++ เรมิ่ ต้นไดร้ ับการออกแบบให้เปน็ ภาษาสาหรับงานทางวิทยาศาสตร์และต่อมามกี ารพัฒนาตอ่ เปน็ ภาษา PL/I และ Pascal ALGOL ออกแบบโดยบริษัท IBMเป็นภาษาท่โี ต้ตอบกับผู้ใชท้ นั ทเี หมาะสาหรับจัดการกบั กลุ่มของขอ้ มลู ทสี่ ัมพนั ธ์กันใน รปู แบบตาราง APL ถกู ออกแบบมาใหใ้ ช้กบั ข้อมูลทไ่ี มใ่ ช้ตัวเลขซง่ึ อาจเป็นสัญลักษณพ์ ิเศษหรือตัวอักษรกไ็ ดน้ ยิ มใช้ในดา้ น ปัญญาประดษิ ฐ์ (Artificial Intelligence) LISP นิยมใชใ้ นโรงเรียนเพือ่ สอนทกั ษะการแก้ปัญหาให้กบั นกั เรียน ถูกออกแบบมาใหใ้ ช้กบั งานทง้ั ทางด้านวิทยาศาสตร์และธรุ กจิ LOGO นยิ มใชม้ ากในงานด้านปัญญาประดษิ ฐจ์ ัดเปน็ ภาษาธรรมชาติภาษาหนึ่ง PL/I ถูกออกแบบมาให้ใช้กับงานทางธุรกิจจะมีคุณสมบตั ใิ นการสรา้ งโปรแกรมสาหรบั พมิ พร์ ายงาน PROLOG RPG
7 2.3 ตวั แปลภาษา (Translator) ในการพฒั นาซอฟต์แวร์คอมพวิ เตอร์นั้นโปรแกรมเมอรจ์ ะเขียนโปรแกรมในภาษาคอมพิวเตอรแ์ บบ ตา่ งๆ ตามแต่ความชานาญของแต่ละคนโปรแกรมทไี่ ดจ้ ะเรยี กวา่ โปรแกรมตน้ ฉบับหรือซอร์สโปรแกรม (source program) ซึ่งมนษุ ย์จะอ่านโปรแกรมต้นฉบบั น้ีไดแ้ ตค่ อมพิวเตอรจ์ ะไม่เขา้ ใจคาส่ังเหล่านัน้ เนอ่ื งจาก คอมพวิ เตอรเ์ ขา้ ใจแต่ภาษาเครื่อง (Machine Language) ซง่ึ ประกอบขนึ้ จากรหสั ฐานสองเท่านน้ั จงึ ตอ้ งมีการ ใชโ้ ปรแกรมตวั แปลภาษาคอมพวิ เตอร์ (Translator) ในการแปลภาษาคอมพิวเตอรภ์ าษาต่างๆไปเปน็ ภาษาเครื่องโปรแกรมท่แี ปลจากโปรแกรมต้นฉบับแลว้ เรียกว่า ออบเจคโปรแกรม (object program) ซึง่ จะ ประกอบดว้ ยรหัสคาส่ังที่คอมพวิ เตอร์สามารถเขา้ ใจและนาไปปฏิบตั ไิ ด้ตอ่ ไป ตวั แปลภาษาทม่ี กี ารใชอ้ ยู่ในปัจจุบันสามารถแบง่ ได้เปน็ 3 ตัวดงั นี้ 1. แอสเซมเบลอ (Assembler) เปน็ ตวั แปลภาษาแอสแซมบลซี ึ่งเปน็ ภาษาระดบั ต่าให้เปน็ ภาษาเครือ่ ง 2. คอมไพเลอร์ (Compiler) จะทาการแปลโปรแกรมทั้งโปรแกรมใหเ้ ป็นภาษาเคร่อื งทเี ดยี วการแปลนจ้ี ะเปน็ การตรวจสอบ ไวยากรณ์ของภาษาถ้ามีข้อผิดพลาดทางไวยากรณ์ของภาษาเกดิ ข้นึ ก็จะแจง้ ให้ทราบ 3. อนิ เตอร์พรีเตอร์ (Interpreter) จะทาการแปลโปรแกรมภาษาช้นั สงู ทลี ะคาสง่ั ทลี ะบรรทัดระหวา่ งการแปลเกดิ พบข้อผดิ พลาดท่ี บรรทดั ใดก็จะฟ้องใหท้ าการแกไ้ ขทีละบรรทดั นั้นทนั ที ตัวแปรภาษาทุกตัวจะทาการแปรภาษาคอมพวิ เตอรใ์ หเ้ ปน็ ภาษาเครือ่ ง (ตวั เลข 0 กบั 1) เพอ่ื ให้ เครือ่ งคอมพวิ เตอรเ์ ขา้ ใจและทางานตามคาสง่ั ได้
8 3. การพัฒนาโปรแกรม ขนั้ ตอนหรือวธิ ีการพฒั นาโปรแกรมประกอบด้วย 6 ขั้นตอนดงั นี้ 1. การวิเคราะห์ปัญหา(Problem Analysis) การวิเคราะห์ปัญหา ประกอบดว้ ยขัน้ ตอนต่างๆ ดังนี้ 1. กาหนดวตั ถุประสงค์ของงาน เพอ่ื พจิ ารณาว่าโปรแกรมตอ้ งทาการประมวลผลอะไรบา้ ง 2. พจิ ารณาขอ้ มลู นาเข้า เพ่ือให้ทราบว่าจะต้องนาขอ้ มลู อะไรเข้าคอมพิวเตอร์ ขอ้ มูลมคี ุณสมบตั เิ ป็น อยา่ งไร ตลอดจนถงึ ลักษณะและรปู แบบของข้อมูลทจ่ี ะนาเข้า 3 พิจารณาการประมวลผล เพื่อให้ทราบว่าโปรแกรมมขี นั้ ตอนการประมวลผลอยา่ งไรและมีเงื่อนไปการ ประมวลผลอะไรบ้าง 4. พิจารณาข้อมูลนาออก เพ่อื ใหท้ ราบว่ามีข้อมูลอะไรทจี่ ะแสดง ตลอดจนรูปแบบและส่ือที่จะใชใ้ นการ แสดงผล 2. การออกแบบโปรแกรม(Design) การออกแบบข้ันตอนการทางานของโปรแกรมเปน็ ขั้นตอนท่ีใชเ้ ป็นแนวทางในการลงรหสั โปรแกรม อาจใชเ้ คร่ืองมือตา่ งๆ ชว่ ยในการออกแบบ เชน่ คาสงั่ ลาลอง (Pseudocode) หรือ ผังงาน (Flow chart)การออกแบบโปรแกรมนั้นไมต่ อ้ งพะวงกบั รูปแบบคาสงั่ ภาษาคอมพวิ เตอร์ แตม่ ุ่งความสนใจไป ที่ลาดบั ขนั้ ตอนในการประมวลผลของโปรแกรมเท่านนั้ 3. การเขยี นโปรแกรมด้วยภาษาคอมพิวเตอร์(Programming) การเขยี นโปรแกรมเปน็ การนาเอาผลลัพธข์ องการออกแบบโปรแกรม มาเปล่ียนเปน็ โปรแกรม ภาษาคอมพิวเตอรภ์ าษาใดภาษาหน่งึ ผู้เขียนโปรแกรมจะต้องให้ความสนใจต่อรูปแบบคาสงั่ และกฎเกณฑข์ อง ภาษาท่ใี ช้เพื่อให้การประมวลผลเปน็ ไปตามผลลพั ธ์ทีไ่ ด้ออกแบบไว้ 4. การทดสอบและแก้ไขโปรแกรม(Testing) การทดสอบโปรแกรมเปน็ การนาโปรแกรมทลี่ งรหัสแล้วเข้าคอมพวิ เตอร์ หรือการตดิ ต้ังโปรแกรมเพ่ือ ตรวจสอบการทางานของโปรแกรมวา่ ถูกต้องหรอื ไม่ ถ้าพบว่ายงั ไมถ่ ูกก็แกไ้ ขใหถ้ กู ต้องตอ่ ไป 5. การทาเอกสารประกอบโปรแกรม(Documentation) การทาเอกสารประกอบโปรแกรมเปน็ งานทสี่ าคัญของการพัฒนาโปรแกรม เอกสารประกอบ โปรแกรมชว่ ยให้ผู้ใชโ้ ปรแกรมเข้าใจวตั ถุประสงค์ ขอ้ มลู ทจ่ี ะต้องใชก้ ับโปรแกรม ตลอดจนผลลัพธ์ท่ีจะได้จาก โปรแกรม การทาโปรแกรมทกุ โปรแกรมจึงควรตอ้ งทาเอกสาร 6. การบารุงรักษาโปรแกรม(Maintenance) ต้องมผี ู้คอยควบคมุ ดแู ลและคอยตรวจสอบการทางาน การบารุงรักษาโปรแกรมจึงเป็นข้นั ตอนท่ี ผเู้ ขยี นโปรแกรมต้องคอยเฝา้ ดูและหาขอ้ ผดิ พลาดของโปรแกรมในระหว่างทผี่ ู้ใช้ใช้งานโปรแกรม และปรับปรุง โปรแกรมเมือ่ เกิดขอ้ ผิดพลาดขนึ้
9 4. การจาลองความคิดในการเขียนโปรแกรม การจาลองความคดิ เพื่อวางแผนขั้นตอนในการเขยี นโปรแกรมทางคอมพิวเตอรเ์ รียกไดอ้ ีกอยา่ งว่า อลั กอรทิ มึ (Algorithm) หรือขน้ั ตอนวธิ ี อัลกอริทึม เป็นลาดบั ของคาส่งั ทค่ี อมพวิ เตอร์จะปฏบิ ัติตามเพอื่ แกป้ ัญหาให้กับเราโดยจะทาคาส่ัง เรียงกนั ตามลาดับก่อนหลงั จะไมข่ ้ามขน้ั ผลลพั ธ์ของแตล่ ะข้นั ตอนผลลัพธท์ ี่ไดข้ องข้ันตอนหนึง่ จะส่งตอ่ ไปยงั ข้นั ตอนถดั ไปและส่งต่อกนั ไปเช่นนต้ี ามลาดับขน้ั จนถึงคาส่งั สดุ ทา้ ยจึงจะได้ผลลัพธ์ท่เี สร็จสมบรู ณ์ เครื่องมอื ทใ่ี ช้ในการจาลองความคิดประกอบด้วย 2 ลักษณะคอื 1. ข้อความคาบรรยายหรอื รหสั เทียม (pseudo code) เป็นการเขียนเค้าโครงด้วยการบรรยายเป็นภาษามนษุ ย์ท่ใี ช้สือ่ สารกันเพือ่ ใหท้ ราบถึงข้นั ตอนการ ทางานของการเขียนโปรแกรมแตล่ ะตอนในบางครง้ั อาจใช้คาสง่ั ของภาษาทใ่ี ชเ้ ขยี นโปรแกรมกไ็ ด้ หลกั การทว่ั ไปในการเขยี นรหสั เทยี ม 1. สัญลักษณท์ ่ีใช้ในการดาเนนิ การทางคณติ ศาสตรต์ า่ งๆจะถกู ใชง้ านตามปกติคอื “+” สาหรบั การ บวก “-” สาหรับการลบ “*” สาหรับการคณู และ“/” สาหรับการหาร 2. ชอ่ื ข้อมลู แทนจานวนทจ่ี ะถกู ดาเนนิ การ 3. การกาหนดคา่ ให้กับชอ่ื ข้อมูล เช่น เมื่อเราต้องการกาหนดใหข้ อ้ มูล pi มีคา่ เทา่ กบั 3.14 สามารถเขียนได้ดว้ ยข้อความ pi=3.14 ในการกาหนดคา่ ทางคอมพวิ เตอร์ด้านซา้ ยของเครื่องหมายมกั ใช้แทนทเี่ กบ็ ข้อมลู และด้านขวาแทน ขอ้ มูลที่ต้องการนาไปเก็บ(ดังน้นั หากใช้ข้อความวา่ 3.14=pi ถอื ว่าไมถ่ ูกตอ้ งตามความหมายนี้) 4. คาสงวนบางคาทใี่ ชใ้ นภาษาระดบั สูงทั่วไปอาจถูกนามาใช้เช่น Read หรอื Enter สาหรบั การรบั ข้อมลู เขา้ และ Write หรือ Print สาหรบั การแสดงขอ้ มูลออก 5. การเพ่ิมหรือลดระยะยอ่ หนา้ อย่างเหมาะสมเพ่อื แสดงระดับของขั้นตอนการทางานในโครงสร้าง ควบคุมการทางานในกลมุ่ เดยี วกัน ตัวอยา่ งท่ี 1 การวางแผนไปโรงเรยี น การจาลองความคดิ ด้วยรหสั เทยี ม เรมิ่ ตน้ ตนื่ นอน อาบนา้ แตง่ ตวั รบั ประทานอาหารเช้า ไปโรงเรยี น จบ
10 2. สญั ลักษณ์หรอื ผังงาน (Flowchart) เปน็ เคร่ืองมอื ชนิดหนึ่งทใ่ี ชร้ ูปภาพแสดงการไหลของขอ้ มลู ในระบบตัง้ แต่แรกจนได้ผลลพั ธ์ตาม ตอ้ งการจะแสดงการทางานของโปรแกรมโดยละเอียดในแตล่ ะข้นั ตอนผงั งานโปรแกรมเปน็ สงิ่ จาเปน็ สาหรับ ผ้เู ขียนโปรแกรมเพราะตอ้ งใชเ้ ปน็ แนวทางในการเขียนโปรแกรมและเมือ่ โปรแกรมเกดิ ขอ้ ผดิ พลาดการเขา้ ไป วเิ คราะหผ์ ังงานโปรแกรมจะทาได้งา่ ยกว่าการเข้าไปวเิ คราะห์ตัวโปรแกรมโดยตรง ประโยชนข์ องผงั งาน 1. ช่วยอธบิ ายลาดบั ขนั้ ตอนการทางานของโปรแกรม 2. ทาให้ตรวจสอบข้อผิดพลาดของโปรแกรมไดง้ ่าย 3. ทาใหผ้ อู้ นื่ สามารถศกึ ษาการทางานของโปรแกรมและแกไ้ ขโปรแกรมได้ง่าย สญั ลกั ษณ์ทีใ่ ชใ้ นการเขียนผังงานและหนา้ ที่ หมายถงึ เร่ิมตน้ /จบงาน หมายถงึ การตัดสนิ ใจเลอื ก หมายถึง แทนการกาหนดค่าหรือคานวณคา่ หมายถงึ อ่านข้อมลู เขา้ หรอื แสดงข้อมลู ออก หมายถึง แสดงผลลัพธท์ างเคร่อื งพิมพ์ หมายถึง แสดงผลลัพธ์บนจอภาพ หมายถึง จดุ เช่ือมตอ่ หมายถงึ ลูกศรแสดงทิศทาง หมายถึง การป้อนขอ้ มลู เขา้ ด้วยมือ
Search
Read the Text Version
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128