1 / 74

การเขียนโปรแกรมคอมพิวเตอร์ 1

การเขียนโปรแกรมคอมพิวเตอร์ 1. โปรแกรมเมอร์คนแรกของโลก. Augusta Lovelace Ada คือ โปรแกรมเมอร์คนแรกของโลก แต่ Edsger Wybe Dijkstra ใช้คำว่า โปรแกรมเมอร์ (Programmer) กับโลกของคอมพิวเตอร์เป็นคนแรก. ข้อมูลจาก http://www.twoguru.com/playground/article/dijkstra.htm

Download Presentation

การเขียนโปรแกรมคอมพิวเตอร์ 1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. การเขียนโปรแกรมคอมพิวเตอร์ 1

  2. โปรแกรมเมอร์คนแรกของโลกโปรแกรมเมอร์คนแรกของโลก Augusta Lovelace Ada คือ โปรแกรมเมอร์คนแรกของโลก แต่ Edsger Wybe Dijkstra ใช้คำว่า โปรแกรมเมอร์ (Programmer) กับโลกของคอมพิวเตอร์เป็นคนแรก ข้อมูลจาก http://www.twoguru.com/playground/article/dijkstra.htm ข้อมูลจาก http://www.cs.utexas.edu/users/dahlin/Classes/GradOS/papers/p341-dijkstra.pdf ข้อมูลจาก http://www.twoguru.com/playground/article/dijkstra.htm ข้อมูลจาก http://www.thaiall.com/article/teachpro.htm

  3. โปรแกรมเมอร์คนแรกของโลกโปรแกรมเมอร์คนแรกของโลก • "what if a calculating engine could not only foresee but could act on that foresight" • (จะเป็นอย่างไร ถ้าหากเครื่องคำนวณไม่เพียงสามารถหยั่งรู้ได้ หากแต่สามารถตอบสนองต่อการหยั่งรู้นั้นได้ด้วย) • สิ่งที่เธอทำคือ การสร้างภาษาสำหรับเครื่องวิเคราะห์ (analytical engine)

  4. โปรแกรมเมอร์คนแรกของโลกโปรแกรมเมอร์คนแรกของโลก • แต่งเพลงที่ซับซ้อน • สร้างภาพกราฟิก • นำมาใช้เพื่อการคำนวณขั้นสูง • พัฒนาวงการวิทยาศาสตร์ได้ • ร้อยกว่าปีต่อมา ในปี พ.ศ. 2522 (ค.ศ. 1979) กระทรวงกลาโหมสหรัฐฯ สร้างภาษาคอมพิวเตอร์มาตรฐานISOขึ้นมาตัวแรก พร้อมตั้งชื่อเพื่อเป็นเกียรติแก่ เลดี้ เอดา ว่า ภาษา "ADA"

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

  6. ภาษาคอมพิวเตอร์มีมากมายภาษาคอมพิวเตอร์มีมากมาย ข้อมูลจาก http://dmoz.org/Computers/Programming/Languages/ 143 ภาษา ข้อมูลจาก http://people.ku.edu/~nkinners/LangList/Extras/langlist.htm 2500 ภาษา ข้อมูลจาก http://www.levenez.com/lang/ 50 ภาษา (Computer Languages Timeline) ABC, Ada, ADL, Algol 60, Algol 68, APL, AppleScript@, Assembly, Awk, BASIC, Befunge, BETA, Bigwig, Bistro@, Blue, Brainfuck, C, C++, Caml@, Cecil, CHILL, Clarion, Clean, Clipper, CLU, Cobol, CobolScript, Cocoa, Component Pascal@, C-sharp, Curl, D, DATABUS, Delphi, DOS Batch@, Dylan, E, Eiffel, ElastiC, Erlang, Euphoria, Forth, Fortran, Fortress, FP, Frontier, Goedel, Groovy@, Haskell, HTML@, HTMLScript@, HyperCard@, ICI, Icon, IDL, Intercal, Io, Jal@, Java, JavaScript, Jovial, LabVIEW, Lagoona@, LaTeX@, Leda, Limbo, Lisp, Logo@, Lua, m4, Maple@, Mathematica@, MATLAB@, Mercury, Miranda, Miva, ML, Modula-2, Modula-3, Moto, Oberon, Objective Caml@, Objective-C, Obliq, Occam, Oz, Pascal, Perl, PHP, Pike, PL, Pliant, PL-SQL, POP-11, PostScript@, PowerBuilder@, Prograph, Prolog, Proteus, Python, R@, REBOL, Refal, Rexx, Rigal, RPG, Ruby, SAS, Sather, Scheme@, Self@, SETL, SGML@, Simkin, Simula, Sisal, S-Lang, Smalltalk, Snobol, SQL, Squeak@, Tcl-Tk, Tempo, TeX@, TOM, TRAC, Transcript, Turing, T3X, UML@, VBScript@, Verilog@, VHDL@, Visual Basic, Visual DialogScript, Visual FoxPro, Water, XML@, XOTcl@, YAFL, Yorick, Z

  7. ภาษาคอมพิวเตอร์ • สามารถแบ่งออกได้เป็น 5 ยุคคือ 1. ภาษาเครื่อง (Machinelanguage) 2. ภาษาแอสเซมบลี (Assemblylanguage) 3. ภาษาชั้นสูง (High-levellanguage)หรือ ภาษารุ่นที่ 3 (3GL:Third Generation Language) 4. ภาษาชั้นสูงมาก (Veryhigh-levellanguage) หรือภาษารุ่นที่ 4 (4GL) 5. ภาษาธรรมชาติ (Naturallanguage) หรือภาษารุ่นที่ 5 (5GL)

  8. 1. ภาษาเครื่อง (Machinelanguage) • เป็นภาษาพื้นฐานที่คอมพิวเตอร์สามารถเข้าใจได้ แต่ละคำสั่งประกอบขึ้นจากกลุ่มตัวเลข 0 และ 1 ซึ่งเป็นเลขฐานสอง

  9. 2. ภาษาแอสเซมบลี (Assemblylanguage) • เป็นภาษาที่ใช้สัญลักษณ์ข้อความ แทนกลุ่มของตัวเลขฐานสอง เพื่อให้ง่ายต่อการเขียนและการจดจำมากขึ้น การทำงานของโปรแกรมจะต้องทำการแปลภาษาแอสเซมบลีให้เป็นภาษาเครื่อง โดยใช้ตัวแปลที่เรียกว่า แอสเซมเบลอร์(Assembler)

  10. 3. ภาษาชั้นสูง (High-levellanguage) หรือภาษารุ่นที่ 3 (3GL:Third Generation Language) • ถูกสร้างขึ้นมาเพื่อให้เขียนโปรแกรมได้ง่ายขึ้น โดยมีลักษณะเหมือนกับภาษาอังกฤษทั่วไป ผู้เขียนไม่จำเป็นต้องมีความรู้เกี่ยวกับฮาร์แวร์แต่อย่างใด ภาษานี้จำเป็นต้องมีตัวแปลภาษาเครื่องเช่นกัน เรียกตัวแปลนี้ว่า คอมไพเลอร์ (compiler) หรือ อินเตอร์พรีเตอร์ (Interpreter) อย่างใดอย่างหนึ่ง • ตัวอย่างของภาษาชั้นสูง เช่น ภาษาปาสคาล ภาษาซี ภาษโคบอล ภาษาเบสิก ภาษาฟอร์แทรน

  11. 4. ภาษาชั้นสูงมาก (Veryhigh-levellanguage) หรือภาษารุ่นที่ 4 (4GL) • เป็นภาษาที่มีลักษณะคล้ายภาษาพูดตามปกติของมนุษย์ ภาษานี้จะช่วยให้การเขียนโปรแกรมเร็วมากขึ้นกว่าภาษาในรุ่นที่ 3 เนื่องจากมีเครื่องมือที่ช่วยในการสร้างแบบฟอร์มหน้าจอ เพื่อจัดการกับข้อมูลรวมไปถึงการออกรายงาน เมนูต่าง ๆ • ตัวอย่างของภาษาชั้นสูงมากได้แก่ informix-4GL, MAGIC , Delphi , Power Builder ฯลฯ

  12. 5. ภาษาธรรมชาติ (Naturallanguage) หรือภาษารุ่นที่ 5 (5GL) • เป็นภาษาที่สามารถสั่งงานคอมพิวเตอร์โดยใช้รูปแบบของภาษามนุษย์ได้เลย คำสั่งอยู่ในรูปแบบที่ไม่แน่นอนตายตัว แต่คอมพิวเตอร์จะทำการแปลให้ออกมาในรูปที่คอมพิวเตอร์เข้าใจได้ ภาษานี้ถูกสร้างขึ้นมาจากเทคโนโลยีทางด้านระบบผู้เชี่ยวชาญ (Expert system) • ตัวอย่างภาษาในรุ่นที่ 5 ได้แก่ ภาษา PROLOG เป็นต้น

  13. ขั้นตอนการเขียนโปรแกรมคอมพิวเตอร์ขั้นตอนการเขียนโปรแกรมคอมพิวเตอร์ • การวิเคราะห์ปัญหา (Problem analysis) • การออกแบบโปรแกรม (Design) • การเขียนโปรแกรมโดยใช้ภาษาใดภาษาหนึ่ง (Coding) • การตรวจสอบข้อผิดพลาดของโปรแกรม (Testing and Debugging ) • การทดสอบความถูกต้องของโปรแกรม (Testingand validating) • การทำเอกสารประกอบโปรแกรม (Documentation) • การบำรุงรักษาโปรแกรม (Program Maintenance)

  14. Input Output Process Input 2 3 1 การวิเคราะห์ปัญหา • สิ่งที่ต้องพิจารณา • Input ? (พิจารณาจาก Output) • Output? (พิจารณาอันดับแรก) • Process (ยังไม่ต้องสนใจตอนนี้)

  15. แนวความคิดเบื้องต้นการวิเคราะห์ปัญหาแนวความคิดเบื้องต้นการวิเคราะห์ปัญหา • การวิเคราะห์ปัญหา วิเคราะห์ผลลัพธ์ วิเคราะห์ Input Process เขียนขั้นตอนการแก้ปัญหา

  16. การออกแบบโปรแกรม • เครื่องมือที่ใช้ในการออกแบบ • ผังงาน (Flowchart) ขั้นตอนการแก้ปัญหาทีละขั้นตอนในลักษณะรูปภาพ • รหัสจำลอง (Pseudo) รูปแบบเป็นภาษาพูดง่าย ๆ ภาษาอังกฤษ หรือภาษาไทยก็ได้

  17. การพัฒนาอัลกอริธึม • ข้อดีของรหัสเทียม (จำลอง) • แปลงเป็นโปรแกรมได้ง่าย • ข้อดีของผังงาน • อ่านง่าย เข้าใจตรงกันได้

  18. สัปดาห์ที่ ๑ ขั้นตอนการวิเคราะห์งาน ๑ การหาวัตถุประสงค์ของการเขียนโปรแกรม ๒ การหารูปแบบผลลัพธ์ที่ต้องการ ๓ การหาข้อมูลนำเข้าของโปรแกรม ๔ การหาตัวแปรที่จำเป็นต้องใช้ในโปแกรม ๕ การหาขั้นตอนวิธีการทำงานของโปรแกรม

  19. สูง ฐาน ๑ การหาวัตถุประสงค์ของการเขียนโปรแกรม • ผู้เขียนโปรแกรมจะต้องหาวัตถุประสงค์จากงานที่ต้องการเขียนโปรแกรม ว่างานต้องการแก้ปัญหาอะไรบ้าง เช่น ต้องการหาพื้นที่สามเหลี่ยมมุมฉากโดยรับค่าทางแป้นพิมพ์ วัตถุประสงค์ เพื่อคำนวณหาพื้นที่สามเหลี่ยม

  20. สูง ฐาน ๒ การหารูปแบบผลลัพธ์ของโปรแกรม • เมื่อผู้เขียนโปรแกรมหาวัตถุประสงค์จากงานที่ต้องการเขียนโปรแกรมเรียบร้อยแล้ว ก็มาทำการออกแบบผลลัพธ์ของโปรแกรม ตามความต้องการของงาน เช่น กรุณาป้อน ค่าความสูง = ค่าฐาน = พื้นที่สามเหลี่ยม = รับค่าทางแป้นพิมพ์ วิชา 13-100-152 การเขียนโปรแกรมคอมพิวเตอร์ (Computer Programming ) (2-2-3) บรรยายโดย อาจารย์ สุวุฒิ ตุ้มทอง

  21. สัปดาห์ที่ ๑ สูง ฐาน ๓ การหาข้อมูลนำเข้าของโปรแกรม • ผู้เขียนโปรแกรมจะต้องหาข้อมูลนำเข้า จากผลลัพธ์ของโปรแกรม โดยคำนึงถึงวิธีการคำนวณ และข้อมูลที่ใช้ เพื่อให้ได้ผลลัพธ์เช่น ผลลัพธ์ต้องการ พื้นที่สามเหลี่ยมมุมฉาก ข้อมูลที่หาและเตรียม ประกอบด้วย ๑ สูตรการคำนวณพื้นที่ = 0.5 X ฐาน X สูง ๒ ค่าความยาวของฐาน และ ค่าความสูง

  22. สัปดาห์ที่ ๑ ๔ การหาตัวแปรที่จำเป็นต้องใช้ในโปแกรม • ผู้เขียนโปรแกรมจะต้องกำหนดชื่อตัวแปรสำหรับใช้เป็นที่เก็บข้อมูลทั้งหมดของโปรแกรม ซึ่งรวมทั้งจำนวนรอบการทำงานของโปรแกรมด้วย • กฏการตั้งชื่อตัวแปร ๑ ชื่อตัวแปรจะต้องขึ้นต้นด้วยตัวอักษร ตัวต่อไปอาจเป็นตัวอักษรหรือตัวเลขก็ได้ แต่จะต้องไม่มีเครื่องหมาย บวก(+) ลบ(-) คูณ(*) หาร (/) หารเอาเศษ(%) และเครื่องเว้นวรรค (Blank) เช่น A+5 ๒ ความยาวของตัวแปรและตัวอักษรตัวเล็กตัวใหญ่ก็แตกต่างกัน ๓ ซื่อตัวแปรต้องไม่ซ้ำคำสงวน เช่น For , If ๔ ชื่อตัวแปรควรตั้งให้สื่อความหมาย เช่น ความยาวฐาน = Base

  23. การหาขั้นตอนวิธีการทำงานของโปรแกรม • ขั้นตอนนี้หาวิธีการทำงานของโปรแกรม หรือเรียกว่า อัลกอริทึม( Algorithm)โดยจะขึ้นอยู่กับลักษณะงานโดยที่ผู้เขียนจะต้องมีความเข้าใจในงานที่วิเคราะห์ ถ้าผู้เขียนสามารถกำหนดขั้นตอนวิธีการทำงานของโปรแกรมอย่างละเอียด และ ถูกต้องแล้วจะทำให้การเขียนโปรแกรมด้วยภาษาจะทำง่ายขึ้น เช่น • ขั้นตอนวิธีการทำงานของ โปรแกรมการหาพื้นที่สามเหลี่ยมมุมฉากป้อนค่าทางแป้นพิมพ์

  24. การหาขั้นตอนวิธีการทำงานของโปรแกรม • ขั้นตอนวิธีการทำงานของ (อัลกอริทึม ) โปรแกรมการหาพื้นที่สามเหลี่ยมมุมฉากป้อนค่าทางแป้นพิมพ์ ๑ เริ่มต้นโปรแกรม ๒ กำหนดค่าให้กับตัวแปร ๓ รับข้อมูลค่าฐาน ค่าความสูง จากแป้นพิมพ์ ๔ คำนวณพื้นที่สามเหลี่ยมมุมฉาก ๕ แสดงค่าผลลัพธ์ทางจอภาพ ๖ จบโปรแกรม

  25. นักศึกษาจงเขียนขั้นตอนการวิเคราะห์งานทั้ง ๕ ขั้นตอน แบบฝึกหัดครั้งที่ ๑ • จงเขียนขั้นตอนการวิเคราะห์งานโปรแกรมการคำนวณพื้นที่ วงกลม โดยรับค่ารัศมีจากแป้นพิมพ์ โดยแสดงการวิเคราะห์ทีละขั้นตอนอย่างละเอียด

  26. การเขียนผังงาน ( Flowchart) • ความหมาย แผนภาพที่เขียนขึ้นโดยใช้สัญลักษณ์มาตรฐานเพื่อแสดงขั้นตอนวิธีการทำงานของโปรแกรม หรือระบบงานที่ต้องการ • ประเภทของผังงาน ๑ ผังงานระบบ (System Flowchart) ผังงานที่แสดงถึงขึ้นตอนการทำงานของระบบ ให้เห็นในภาพรวมอย่างกว้างๆ ๒ ผังงานโปรแกรม (Program Flowchart) ผังงานที่แสดงถึงขึ้นตอนการทำงานของระบบ อย่างละเอียดซึ่งสามารถนำเอาผังงานมาเขียนโปรแกรมตามที่ต้องการได้

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

  28. A= 0.5 * H * B สัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรม • สัญลักษณ์ Process Process คือ การกำหนดค่า หรือการคำนวณค่า • ตัวอย่าง สูตรการคำนวณพื้นที่

  29. สัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรมสัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรม • สัญลักษณ์ Decision Decision คือ การทดสอบเงื่อนไขหรือเปรียบเทียบเงื่อนไขเพื่อตัดสินใจทำงานอย่างใดอย่างหนึ่ง • ตัวอย่าง การตัดสินใจเลือก ๑ ทาง False True X > Y X=X+2

  30. สัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรมสัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรม • สัญลักษณ์ Decision Decision คือ การทดสอบเงื่อนไขหรือเปรียบเทียบเงื่อนไขเพื่อตัดสินใจทำงานอย่างใดอย่างหนึ่ง • ตัวอย่าง การตัดสินใจเลือก ๒ ทาง False True X > Y X=X+2 Y=X+1

  31. สัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรมสัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรม • สัญลักษณ์ Start / Stop Program OR Terminal Interrupt คือ การเริ่มต้นโปรแกรมหรือสิ้นสุดการทำงานโปรแกรม หรือการหยุดชั่วคราว • ตัวอย่าง การใช้งาน Pause Start Stop

  32. สัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรมสัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรม • สัญลักษณ์ Input / Output Input / Output คือ การรับข้อมูล หรือ การแสดงผลลัพธ์ โดยไม่ได้ระบุสื่อที่ใช้ • ตัวอย่าง การใช้งาน Print P,O,M Input P,O,M

  33. สัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรมสัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรม • สัญลักษณ์ Display Display คือ การแสดงผลลัพธ์ทางจอภาพ • ตัวอย่าง การใช้งาน Display P,O,M

  34. สัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรมสัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรม • สัญลักษณ์ Document Document คือ การพิมพ์ผลลัพธ์ออกทางกระดาษพิมพ์ • ตัวอย่าง การใช้งาน Print P,O,M

  35. สัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรมสัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรม • สัญลักษณ์ Manual Input Manual Input คือ การรับข้อมูลหรือคำสั่งผ่านทางคีย์บอร์ด • ตัวอย่าง การใช้งาน Input x,y

  36. สัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรมสัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรม • สัญลักษณ์ Connector Connector คือ แสดงจุดเชื่อมต่อจากที่หนึ่งไปยังอีกที่หนึ่งของผังงาน โดยที่จุดเชื่อมต่อนี้อยู่ในหน้าเดียวกัน • ตัวอย่าง การใช้งาน X = x+1 A

  37. สัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรมสัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรม • สัญลักษณ์ Off page Connector Off page Connector คือ แสดงจุดเชื่อมต่อจากที่หนึ่งไปยังอีกที่หนึ่งของผังงาน โดยที่จุดเชื่อมต่อนี้อยู่ต่างหน้ากัน • ตัวอย่าง การใช้งาน X = x+1 A

  38. สัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรมสัญลักษณ์มาตรฐานที่ใช้เขียนผังงานโปรแกรม • สัญลักษณ์ Flow line and arrowheads คือ แสดงทิศทางการทำงานของผังงาน โดยใช้ลูกศรเป็นตัวกำหนดทิศทางการทำงานของผังงาน • ตัวอย่าง การใช้งาน X = x+1 A

  39. หลักการเขียนผังงานโปรแกรมหลักการเขียนผังงานโปรแกรม • เขียนผังงานจากด้านบนลงด้านล่าง • ใช้สัญลักษณ์ให้ตรงกับความหมายของผังงาน • ใช้เส้น Flow line and arrowheads แสดงทิศทางการทำงานของผังงาน • ใส่คำอธิบายในสัญลักษณ์สั้นๆ แต่เข้าใจง่าย จะใช้ภาษาไทยหรือภาษาอังกฤษก็ได้ • หลีกเลียงการโยงเส้นทิศทางของผังงาน ควรใช้จุดเชื่อมต่อหน้าเดียวกันแทน • พยายามเขียนผังงานให้จบในหน้าเดียวกัน ถ้าไม่จบควรใช้จุดต่อหน้า

  40. ขั้นตอนการเขียนผังงานโปรแกรมขั้นตอนการเขียนผังงานโปรแกรม จงเขียนผังงานโปรแกรม จากการวิเคราะห์งาน ซึ่งมีขั้นตอนวิธีการทำงาน (อัลกอริทึม) ดังนี้ • เริ่มต้นทำงาน • รับข้อมูลค่าความยาวและความกว้างของสี่เหลี่ยมผืนผ้าผ่านทางคีย์บอร์ด • คำนวณพื้นที่สี่เหลี่ยผืนผ้าตามสูตร Area = Width*Length • พิมพ์ค่าความยาว ความกว้าง และพื้นที่สี่เหลี่ยมออกทางจอภาพ • จบการทำงาน

  41. ขั้นตอนการเขียนผังงานโปรแกรมขั้นตอนการเขียนผังงานโปรแกรม เริ่มต้นทำงาน รับข้อมูล Width, Length คำนวณ Area = Width*Length พิมพ์ Width, Length จบการทำงาน

  42. นักศึกษาจงเขียนผังงานโปรแกรมนักศึกษาจงเขียนผังงานโปรแกรม แบบฝึกหัดครั้งที่ ๒ • จงเขียนผังงานโปรแกรมการคำนวณพื้นที่ วงกลม โดยรับค่ารัศมีจากแป้นพิมพ์ พร้อมการอธิบาย

  43. การพัฒนาอัลกอริธึม • หลักการโครงสร้างควบคุม (Control structures) การเขียนขั้นตอนในรายละเอียดของแต่ละอัลกอริธึม อาศัยโครงสร้างควบคุมดังนี้ • โครงสร้างลำดับ (Sequence structure) • โครงสร้างตัดสินใจ (Selection structure) • โครงสร้างทำซ้ำ (Repetition structure)

  44. การพัฒนาอัลกอริธึม • โครงสร้างลำดับ • หมายถึง งานที่ต้องทำต้องมีลำดับก่อนหลัง • เช่น อัลกอริธึม “การตื่นนอนต้อนรับวันใหม่” • งาน ตื่นนอน • งาน ถอดชุดนอน • งาน เข้าห้องน้ำ • งาน แต่งตัว • งาน เดินทางมาเรียน ต้องจัดลำดับให้ถูกต้อง งาน ตื่นนอน งาน ถอดชุดนอน งาน เข้าห้องน้ำ งาน แต่งตัว งาน เดินทางมาเรียน

  45. โครงสร้างการทำงานแบบลำดับ (Sequence) • โครงสร้างลำดับ • หลักการให้มองงานเป็นชิ้นใหญ่ก่อน ยังไม่ต้องลงรายละเอียด แล้วจัดลำดับความคิดว่าจะทำอะไร ก่อนหรือหลัง ตามลำดับ Begin งาน 1 งาน 2 end งาน 1 งาน 2 ผังงาน รหัสเทียม

  46. ตัวอย่างการเขียนผังงานตัวอย่างการเขียนผังงาน • จงเขียนผังงานที่แสดงลำดับการคำนวณตัวเลข เพื่อหาผลลัพธ์การคำนวณ แล้วเก็บผลลัพธ์ไว้ในหน่วยความจำตำแหน่ง K 8 + 10 / 5 - 6 * 3 โดยมีลำดับการคำนวณทางเลขคณิต ดังนี้ 1. ยกกำลัง 2. คูณหรือหาร (โดยทำจากซ้ายไปขวา) 3. บวกหรือลบ (โดยทำจากซ้ายไปขวา)

  47. ตัวอย่างการเขียนผังงานตัวอย่างการเขียนผังงาน 1 เริ่มต้น T1 = 10 / 5 T3 = 8 + T1 T2 = 6 * 3 K = T3 - T2 1 จบงาน

  48. การพัฒนาอัลกอริธึม example: จงเขียนโปรแกรมคำนวณหาค่า y ของสมการ y = x^2 + 2x +10 start Begin read x y = x*x + 2*x +10 Write y end Read x Y = x*x + 2*x +10 Write y stop รหัสเทียม ผังงาน

  49. จงเขียนผังงานคำนวณการหาพื้นที่สี่เหลี่ยมคางหมู โดยกำหนดค่าความยาวด้านคู่ขนานและความสูงให้ เริ่มต้น 1 พิมพ์ค่าพื้นที่ อ่านความยาวด้าน คู่ขนานและความสูง จบงาน คำนวณหาพื้นที่คางหมู = ½ * ด้านคู่ขนาน * สูง 1

  50. การพัฒนาอัลกอริธึม • โครงสร้างตัดสินใจ (selection) • โครงสร้าง IF • โครงสร้าง IF else

More Related