���¶֧ ��ǹ���������������������µç (�������) ����������ͪش����觷��١��¹�����������������ͧ����������ӧҹ �Ϳ������֧�������������������ҧ���������ͧ�����������������ͧ���������� �������իͿ��������ҡ��������ö������ͧ�������������������� �Ϳ����������Ѻ����ͧ��������������ö���͡����
1. �Ϳ����������Ѻ�к� (System Software)
��� �ش�ͧ����觷����¹����繤����������ٻ ��觨зӧҹ���Դ�Ѻ�����������ҡ����ش ���ͤ�¤Ǻ�����÷ӧҹ�ͧ��������ء���ҧ ����ӹ�¤����дǡ���Ѻ�����㹡����ҹ
�Ϳ����������������к�������ѡ�ѹ�ա��� DOS, Windows, Unix, Linux ������������Ť���觷����¹������дѺ�٧ �� ���� Basic, Fortran, Pascal, Cobol, C �繵� �͡�ҡ�������������㹡�õ�Ǩ�ͺ�к��� Norton�s Utilities ��Ѻ�����������Ѻ�к������蹡ѹ
2. �Ϳ���������ء�� (Application Software)
��� �Ϳ��������������������������������ӧҹ��ҧ� �����������ͧ��� �����Ҩд�ҹ�͡��� �ѭ�� ��èѴ�红����� �繵� �Ϳ���������ء������ö��ṡ���� 2 ������ ���
2.1 �Ϳ����������Ѻ�ҹ�д�ҹ ���
����������¹������͡�÷ӧҹ�����ҧ�����ҵ�ͧ��� �ҧ������¡��� User�s Program �� �������÷Ӻѭ�ը����Թ�� ������к���ҫ��� �������÷��Թ��Ҥ���ѧ �繵� ���������������ѡ�������� ����Ẻ�����ᵡ��ҧ�ѹ�͡仵��������ͧ��� ���͡�ࡳ��ͧ����˹��§ҹ����� �������ö�Ѵ�ŧ���������� (Modifications) 㹺ҧ��ǹ�ͧ������� �������ç�Ѻ������ͧ��âͧ����� ��ЫͿ���������ء������¹��鹹������ǹ�˭��ѡ�������дѺ�٧�繵�ǾѲ��
2.3 �Ϳ����������Ѻ�ҹ����� �����������ء�����ռ��Ѵ����� ������㹡�÷ӧҹ��������ҧ� ����� �¼���餹���� ����ö����������任���ء����Ѻ�����Ţͧ����
����������ö�ӡ�ôѴ�ŧ �������������� ����������繵�ͧ��¹������ͧ ����繡�û����Ѵ���� �ç�ҹ ��Ф�������㹡����¹����� �͡�ҡ��� �ѧ����ͧ�����ҡ㹡�ý֡��л�Ժѵ� ��������������ٻ��� �ѡ���ա����ҹ�˹��§ҹ��ҢҴ�ؤ�ҡ÷���դ����ӹҭ�繾����㹡����¹����� �ѧ��� ����������������ٻ�֧����觷���ӹ�¤����дǡ����繻���ª�����ҧ��� ������ҧ�����������ٻ������������ MS-Office, Lotus, Adobe Photoshop, SPSS, Internet Explorer ��� �����ҧ� �繵�
|
หน้าแรก
|
คำชี้แจงก่อนเรียน
|
รายละเอียดรายวิชา
|
|
แบบทดสอบก่อนเรียน
|
หน่วยที่ 1 ภาษาคอมพิวเตอร์เบื้องต้น
|
แบบทดสอบก่อนเรียนประจำหน่วย
| 1.1 โปรแกรมคอมพิวเตอร์
| 1.2 ภาษาคอมพิวเตอร์
| 1.3 ยุคของภาษาโปรแกรม
| 1.4 ตัวแปลภาษา
| 1.5 ขั้นตอนการพัฒนาโปรแกรม
| แบบฝึกหัดที่ 1.1
| แบบทดสอบหลังเรียนประจำหน่วย
|
|
หน่วยที่ 2 เริ่มต้นกับภาษาซี
|
หน่วยที่ 3 ข้อมูลพื้นฐานและตัวดำเนินการ
|
หน่วยที่ 4 คำสั่งพื้นฐานในภาษาซี
|
หน่วยที่ 5 คำสั่งควบคุมแบบทางเลือก
|
หน่วยที่ 6 คำสั่งควบคุมแบบวนซ้ำ
|
แบบทดสอบหลังเรียน
|
บรรณานุกรม
|
|
แจ้งข่าว
|
แหล่งเรียนรู้เพิ่มเติม
|
ติดต่อครูผู้สอน
|
ผู้พัฒนาบทเรียน
|
|
|
|
|
|
1. มีความรู้ความเข้าใจความหมาย โปรแกรมคอมพิวเตอร์ ภาษาคอมพิวเตอร์ ยุคของภาษาคอมพิวเตอร์และตัวแปลภาษา
|
| 2. มีความรู้ความเข้าใจในขั้นตอนการเขียนและพัฒนาโปรแกรม
|
|
|
|
|
1. อธิบายความหมายของโปรแกรมคอมพิวเตอร์ได้
| 2. อธิบายความหมายของภาษาและบอกยุคของภาษาคอมพิวเตอร์ได้
| 3. อธิบายความหมายของตัวแปลภาษาได้
| 4. อธิบายและบอกลำดับขั้นตอนของการพัฒนาโปรแกรมได้
| 5. อธิบายความหมายของรหัสเทียมและผังงานได้
| 6. บอกขั้นตอนการทำงานของโปรแกรมด้วยรหัสเทียมและผังงานได้
|
|
|
|
|
|
1.1 โปรแกรมคอมพิวเตอร์
| 1.2 ภาษาคอมพิวเตอร์
| 1.3 ยุคของภาษาโปรแกรม
| 1.4 ตัวแปลภาษา
| 1.5 ขั้นตอนการพัฒนาโปรแกรม
|
|
|
|
|
|
คอมพิวเตอร์เป็นเครื่องมืออิเล็กทรอนิกส์ชนิดหนึ่ง ใช้ในการประมวลผลข้อมูล สามารถทำงานตามคำสั่งได้รวดเร็ว แต่ไม่สามารถคิด ริเริ่มทำงานเองได้ ต้องอาศัยผู้ใช้งาน ควบคุม เปิด ปิด หรือสั่งให้คอมพิวเตอร์ทำงานตามต้องการ ด้วยชุดคำสั่งที่เขียนขึ้น ซึ่งเรียกว่าโปรแกรมหรือซอฟต์แวร์
|
| โปรแกรมคอมพิวเตอร์ หมายถึง ชุดคำสั่งที่มีขั้นตอน ตามลำดับ หรือตามเงื่อนไขที่กำหนด ที่สั่งให้เครื่องคอมพิวเตอร์ทำงาน เพื่อให้ได้ผลลัพธ์ตามวัตถุประสงค์ แบ่งออกเป็น 2 ประเภท คือ โปรแกรมระบบหรือซอฟต์แวร์ระบบ (System Software) และ โปรแกรมประยุกต์หรือซอฟต์แวร์ประยุกต์ (Application Software)
| - โปรแกรมระบบหรือซอฟต์แวร์ระบบ (System Software) คือ ชุดคำสั่งที่ทำหน้าที่ควบคุมการปฏิบัติงานของอุปกรณ์คอมพิวเตอร์ ตลอดจนทำหน้าที่ควบคุมด้านการสื่อสารข้อมูลในระบบเครือข่ายคอมพิวเตอร์ แบ่งออกเป็น 3 ประเภท คือ โปรแกรมระบบปฏิบัติการ (Operating System : OS) โปรแกรมแปลภาษาคอมพิวเตอร์ (Translator) และโปรแกรมอรรถประโยขน์ (Utility programs)
- โปรแกรมระบบปฏิบัติการ
(Operating System : OS) เป็นโปรแกรมที่ทำหน้าที่เป็นสื่อกลางในการประสานงานระหว่าง โปรแกรมต่าง ๆ กับ อุปกรณ์คอมพิวเตอร์ โดยมีวัตถุประสงค์ เพื่อให้ผู้ใช้สามารถสั่งงานคอมพิวเตอร์ได้ คอมพิวเตอร์ทุกเครื่องต้องถูกติดตั้งโปรแกรมระบบปฏิบัติการก่อนที่จะติดตั้งโปรแกรมใช้งานอื่น ๆ ระบบปฏิบัติการที่รู้จักกันทั่วไป เช่น วินโดวส์ (Wondows) , ลีนุกซ์ (linux) , ยูนิกซ์ (Unix) เป็นต้น
- โปรแกรมแปลภาษาคอมพิวเตอร์
(Translator) ทำหน้าที่แปลภาษาที่ผู้เขียนโปรแกรมเขียนขึ้นให้เป็นภาษาเครื่อง ที่คอมพิวเตอร์เข้าใจและสามารถปฏิบัติตามคำสั่งได้
- โปรแกรมอรรถประโยขน์ (Utility programs)
คือ โปรแกรมที่ช่วยเพิ่มประสิทธิภาพให้กับโปรแกรมระบบปฏิบัติการ โดยให้ผู้ใช้สามารถดูแลความปลอดภัยของข้อมูล และตรวจสอบอุปกรณ์คอมพิวเตอร์ เช่น โปรแกรมตรวจสอบความถูกต้องของข้อมูลในฮาร์ดดิสก์
(Scandisk) โปรแกรมตรวจไวรัส (Virun Scan) โปรแกรมบีบอัดข้อมูล (Compression Utility) โปรแกรมช่วยจัดระเบียบข้อมูลในฮาร์ดดิสก์ (Disk Defragmenter) เป็นต้น
- โปรแกรมประยุกต์หรือซอฟต์แวร์ประยุกต์ (Application Software) หมายถึง โปรแกรมคอมพิวเตอร์ที่ถูกพัฒนาขึ้น เพื่อให้ระบบคอมพิวเตอร์ทำงานด้านต่าง ๆ ตามวัตถุประสงค์ของผู้ใช้ แบ่งรูปแบบของการพัฒนาโปรแกรมออกเป็น 2 ประเภทใหญ่ ๆ คือ โปรแกรมสำเร็จรูป (Package Software) และโปรแกรมที่เขียนขึ้นเพื่อใช้งานเฉพาะด้าน (Application
Specific)
- โปรแกรมสำเร็จรูป (Package Software) เป็นโปรแกรมที่พัฒนาขึ้นมาโดยไม่เจาะจงสำหรับหน่วยงานใดหน่วยงานหนึ่ง แต่พัฒนาขึ้นสำหรับงานทั่ว ๆ ไป ที่ผู้ใช้สามารถเลือกโปรแกรมเหล่านั้นไปประยุกต์ใช้กับงานของตนได้ทันที เช่น โปรแกรมประมวลคำ (Word Processing) โปรแกรมตารางงาน (Spreadsheet) โปรแกรมการนำเสนอ (Presentation) โปรแกรมจัดการฐานข้อมูล (Database) โปรแกรมกราฟิก
(Graphics Software) เป็นต้น
- โปรแกรมที่เขียนขึ้นเพื่อใช้งานเฉพาะด้าน (Application Specific) เป็นโปรแกรมที่ถูกพัฒนาขึ้นสำหรับการใช้งานเฉพาะภายในหน่วยงาน และพัฒนาตามความต้องการของหน่วยงาน แต่ละหน่วยงาน เช่น โปรแกรมข้อมูลนักเรียน-นักศึกษา โปรแกรมสหกรณ์ร้านค้า เป็นต้น โปรแกรมประเภทนี้มีค่าใช้จ่ายในการพัฒนาสูง และใช้เวลาในการพัฒนานาน
|
|
|
|
|
|
|
มนุษย์สื่อสารกับมนุษย์ด้วยกันต้องอาศัยภาษาในการสื่อสารที่เข้าใจกันทั้งสองฝ่าย เช่น คนไทยใช้ภาษาไทยในการสื่อสารกัน คนอังกฤษใช้ภาษาอังกฤษสื่อสารกัน เป็นต้น หากคนไทยกับคนอังกฤษ ต้องการสื่อสารกับคนอังกฤษให้เข้าใจกัน
ต้องมีฝ่ายใดฝ่ายหนึ่งต้องศึกษาภาษาอีกฝ่ายให้เข้าใจแล้วสื่อสารกันด้วยภาษานั้นแทน แต่วิธีนี้ยากต้องใช้เวลา หรือไม่ก็ใช้ตัวกลาง สื่อสารกันผ่านล่ามแปลภาษา คอมพิวเตอร์ก็เช่นกัน หากคนเราต้องการสื่อสารกับคอมพิวเตอร์ให้เข้าใจ ต้องใช้หลักคล้ายกัน โดยคนเราเลือกใช้ตัวแปลภาษามาแปลภาษา จากภาษาที่คนเราเข้าใจไปเป็นภาษาที่คอมพิวเตอร์เข้าใจ คอมพิวเตอร์รับคำสั่งการทำงานเป็นสัญญาณไฟฟ้า เรียกว่า ภาษาเครื่อง (Machine Language) ซึ่งมนุษย์ทำความเข้าใจยาก เนื่องจากเป็นรหัสตัวเลขแบบต่าง ๆ ไม่สะดวกต่อการสั่งให้คอมพิวเตอร์ทำงาน จึงได้มีการพัฒนาภาษาที่ใช้กับคอมพิวเตอร์ขึ้นมาหลายภาษา แบ่งได้เป็น 2 ระดับ คือ ภาษาระดับต่ำ (Low-level Language) และภาษาระดับสูง (High-level
Language) - ภาษาระดับต่ำ (Low-level Language) เป็นภาษาที่ใกล้เคียงกับภาษาเครื่อง มีการใช้รหัสตัวอักษรสำหรับใช้แทนภาษาเครื่อง แต่ก็ยังยุ่งยากในการศึกษาเรียนรู้ จึงไม่สะดวกในการใช้งาน เช่น ภาษาแอสเซมบลี (Assembly Language) เป็นต้น จึงมีการศึกษาและพัฒนาภาษาที่ให้ผู้ใช้คอมพิวเตอร์เข้าใจได้ง่ายขึ้น
- ภาษาระดับสูง (High-level Language)
เป็นภาษาที่สามารถศึกษาและทำความเข้าใจได้ง่ายขึ้น เหมาะสำหรับการใช้งานในลักษณะต่างกัน มีหลายภาษาตามวัตถุประสงค์ของการพัฒนาขึ้นใช้งาน เช่น ภาษาซี (C Language) ภาษาจาวา (Java Language) ภาษาเบสิก (BASIC Language) ภาษาฟอร์แทรน (FORTRAN Language) เป็นต้น
|
|
|
|
|
|
ภาษาคอมพิวเตอร์ ได้ถูกพัฒนามาหลายยุคหลายสมัย ตั้งแต่ยุคแรก การใช้ภาษายังมีความใกล้เคียงกับภาษาเครื่องคอมพิวเตอร์มาก เรียกว่า ภาษาระดับต่ำ (Low-level Language) แต่มีโครงสร้างและรูปแบบที่ยากต่อความเข้าใจของมนุษย์ ต่อมาได้พัฒนารูปแบบภาษาที่มีความใกล้เคียงกับภาษามนุษย์
เรียกว่า ภาษาระดับสูง (High-level Language) สามารถจำแนกยุคของภาษาคอมพิวเตอร์ได้ 5 ยุค ดังนี้
- ภาษาคอมพิวเตอร์ยุคที่ 1 (First Generation Language) ในยุคนี้จะสั่งงานคอมพิวเตอร์ด้วยภาษาเครื่อง เป็นภาษาที่สื่อสารกับคอมพิวเตอร์ได้โดยตรง คำสั่งในภาษาเครื่องประกอบด้วยตัวเลขฐานสอง มี 0 กับ 1 เป็นสัญลักษณ์แทนสัญญาณไฟฟ้า เนื่องจากเป็นรูปแบบภาษาที่สื่อสารกับคอมพิวเตอร์ได้โดยตรง จึงไม่ต้องมีตัวแปลภาษา การเขียนชุดคำสั่งในยุคนี้นั้น จะมีความยุ่งยากในการเขียนเป็นอย่างยิ่ง
ยุคนี้จัดอยู่ในกลุ่มภาษาระดับต่ำ
- ภาษาคอมพิวเตอร์ยุคที่ 2 (Second Generation Language) พัฒนามาจากยุคที่ 1 เมื่อการเขียนคำสั่งภาษาเครื่องทำได้ยาก จึงได้พัฒนาโดยนำสัญลักษณ์มาใช้แทนรูปแบบตัวเลขในภาษาเครื่อง เพื่อให้สามารถเขียนคำสั่งได้ง่ายขึ้น ภาษาในยุดนี้ได้แก่ ภาษาแอสเซมบลี แต่คอมพิวเตอร์ไม่เข้าใจความหมายของชุดคำสั่งที่เขียนขึ้นด้วยรูปแบบภาษาแอสเซมบลี
จึงต้องมีตัวแปลภาษา เรียกว่า แอสเซมเบลอร์ เพื่อช่วยแปลคำสั่งภาษาแอสเซมบลีให้เป็นภาษาเครื่อง เพื่อให้คอมพิวเตอร์เข้าใจ ยุคนี้ก็ยังจัดอยู่ในกลุ่มภาษาระดับต่ำ
- ภาษาคอมพิวเตอร์ยุคที่ 3 (Third Generation Language) ในยุคนี้ได้พัฒนารูปแบบภาษาให้มีความใกล้เคียงกับภาษาของมนุษย์ยิ่งขึ้น เรียกว่า ภาษาระดับสูง โดยนำกลุ่มคำของภาษาอังกฤษมาใช้เป็นรูปแบบของการเขียน
ช่วยให้โปรแกรมภาษาในยุคนี้มีรูปแบบคำสั่งที่ง่ายต่อการเรียนรู้และเข้าใจ การเขียนโปรแกรมคอมพิวเตอร์ในยุคนี้ เป็นรูปแบบเชิงกระบวนการ จะเขียนคำสั่งเป็นขั้นเป็นตอนเรียงลำดับ โดยผู้เขียนจะต้องจดจำรูปแบบคำสั่งต่าง ๆ จึงยังเป็นเรื่องที่ยุ่งยากสำหรับการเขียนโปรแกรม ตัวอย่างภาษาในยุคที่ 3 เช่น ภาษาซี ภาษาเบสิก ภาษาปาสกาล และภาษาฟอร์แทรน เป็นต้น ภาษาในยุคนี้จะมีตัวแปลภาษา 2 ประเภท คือ คอมไพเลอร์ (Compiler) และอินเทอร์พรีเตอร์ (Interpreter)
- ภาษาคอมพิวเตอร์ยุคที่ 4 (Fourth Generation Language) ภาษาในยุคที่ 3 มีความยุ่งยาก ซับซ้อน ในการออกแบบโปรแกรม จึงต้องการผู้ที่มีประสบการณ์สูงในการเขียนโปรแกรมเหล่านั้น เพื่อให้เกิดความผิดพลาดน้อยที่สุด ไม่เหมาะกับนักเขียนโปรแกรมมือใหม่ จึงมีการพัฒนาภาษาคอมพิวเตอร์ขึ้นมาใหม่ เป็นภาษาคอมพิวเตอร์ที่มีลักษณะการเขียนที่ไม่เป็นลำดับขั้นตอน หรือไม่มีรูปแบบที่แน่นอน เพียงหยิบเอาปุ่มคำสั่งต่าง ๆ มาวาง
ผู้เขียนโปรแกรมรู้เพียงว่าจะให้คอมพิวเตอร์ทำอะไรบ้าง โดยไม่ต้องรู้ว่าทำได้อย่างไร แต่เป็นหน้าที่ของภาษาคอมพิวเตอร์เหล่านั้นมาจัดการแทน รูปแบบของภาษาคอมพิวเตอร์ยุคนี้ช่วยทำให้การเขียนโปรแกรมทำได้ง่าย สะดวก และรวดเร็วขึ้น เรียกว่า ภาษาระดับสูงมาก (Very-high-level Language) ภาษาคอมพิวเตอร์ในยุคที่ 4 นี้ ไม่ได้ถูกออกแบบมาเพื่อทำงานด้วยตนเอง แต่ได้ถูกออกแบบมาเพื่อนำไปใช้ทำงานร่วมกับภาษาอื่น เช่น นำภาษา SQL มาใช้ร่วมกับ ภาษา PHP เป็นต้น
- ภาษาคอมพิวเตอร์ยุคที่ 5 (Fifth Generation Language) ภาษาคอมพิวเตอร์ในยุคที่ 5 นี้ มีความใกล้เคียงกับภาษามนุษย์มากยิ่งขึ้น เรียกว่า ภาษาธรรมชาติ (Natural Language) ผู้ใช้สามารถสั่งงานด้วยเสียง เป็นการนำระบบฐานความรู้มาช่วย โดยจะแปลความของคำสั่งเพื่อทำให้คอมพิวเตอร์เข้าใจและจำโครงสร้างของคำสั่งเหล่านั้นไว้ ภาษาธรรมชาตินี้จะนำไปประยุกต์ใช้กับระบบผู้เชี่ยวชาญ
และระบบปัญญาประดิษฐ์ เช่น การพัฒนาหุ่นยนต์ให้มีความสามารถในการทำงานเหมือนมนุษย์ และสามารถสื่อสารกับมนุษย์ได้ การใช้เสียงเป็นรหัสผ่านในการสั่งให้โปรแกรมที่กำหนดไว้เริ่มทำงาน เป็นต้น
|
|
|
|
|
|
การเขียนโปรแกรมด้วยภาษาใดก็ตาม จะต้องมีตัวแปลภาษาเพื่อแปลโปรแกรมที่เขียนขึ้น ให้เป็นภาษาเครื่อง จึงจะใช้งานได้ เพราะคอมพิวเตอร์รับรู้เฉพาะภาษาเครื่องได้เพียงภาษาเดียวเท่านั้น
|
| ตัวแปลภาษามี 2 ประเภท คือ คอมไพเลอร์ (Compiler) และอินเทอร์พรีเตอร์ (Interpreter) - คอมไพเลอร์ (Compiler) จะทำการแปลชุดคำสั่งทุกคำสั่งที่เขียนขึ้นจากโปรแกรมภาษาใด ๆ ทั้งหมด ให้เป็นแฟ้มชุดคำสั่งภาษาเครื่องก่อน แล้วจึงสามารถนำแฟ้มภาษาเครื่องนั้น
ไปสั่งให้คอมพิวเตอร์ทำงาน โปรแกรมที่เขียนด้วยภาษาใด ๆ เรียกว่า โปรแกรมต้นฉบับ (Source Program) เมื่อแปลโดยตัวแปลภาษาแล้ว จะได้ผลเป็นโปรแกรมภาษาเครื่อง เรียกว่า โปรแกรมจุดหมาย (Object Program) ดังภาพ
ตัวแปลโปรแกรมภาษาต่าง ๆ มีจะมีชื่อเรียกตามภาษานั้น เช่น
Assembler
| ตัวแปลโปรแกรมภาษาแอสเซมบลี
| C Compiler
| ตัวแปลโปรแกรมภาษาซี
| COBOL Compiler
| ตัวแปลโปรแกรมภาษาโคบอล
|
|
|
- อินเทอร์พรีเตอร์ (Interpreter) จะแปลโปรแกรมต้นทางทีละคำสั่ง ให้เป็นคำสั่งภาษาเครื่อง แล้วทำงานตามคำสั่งนั้นเลย เมื่อทำงานตามคำสั่งนั้นเสร็จแล้ว ก็จะทำการแปลคำสั่งต่อไปอีกเรื่อย ๆ จนจบโปรแกรม เหมาะสำหรับโปรแกรมที่ไม่ยาวมาก และต้องการผลลัพธฺ์ทันที ตัวแปลภาษาจะมีชื่อเรียกตามภาษานั้น ๆ เช่น ตัวแปลคำสั่งภาษาเบสิก (BASIC Interpreter)
|
|
|
|
|
|
|
การพัฒนาโปรแกรมมี 6 ขั้นตอน ดังนี้ 1. การวิเคราะห์ปัญหาและความต้องการของผู้ใช้ (Problem Analysis and user Requirement) นักเขียนโปรแกรมจะได้รับมอบหมายจากนักวิเคราะห์ระบบให้พัฒนาโปรแกรม ซึ่งจะต้องเขียนโปรแกรมตามความต้องการของผู้ใช้ นักเขียนต้องทำความเข้าใจปัญหา
ศึกษาและสอบถามความต้องการของผู้ใช้อย่างละเอียด และต้องให้ผู้ใช้ยืนยันว่า นักเขียนโปรแกรมเข้าใจปัญหาและความต้องการถูกต้องดีแล้ว
|
|
|
|
| ตัวอย่าง การวิเคราะห์ปัญหาและความต้องการของผู้ใช้ การเขียนโปรแกรมคำนวณหาพื้นที่สามเหลี่ยม การวิเคราะห์ - ต้องทราบว่าใช้สูตรอะไรได้บ้าง
|
|
|
|
| 2. การกำหนดรายละเอียดของโปรแกรม (Program Specification) เป็นการกำหนดความสามารถและขีดจำกัดของโปรแกรมให้ชัดเจน เช่น กำหนดรายละเอียดเกี่ยวกับข้อมูลเข้า ขั้นตอนการประมวลผล และรายละเอียดการประมวลผลตามที่ต้องการ
|
|
|
|
| ตัวอย่าง การกำหนดรายละเอียดของโปรแกรมคำนวณหาพื้นที่สามเหลี่ยม รายละเอียดของโปรแกรม - ข้อมูลเข้า ความยาวฐาน
ความสูง
- การประมวลผล คำนวณพื้นที่สามเหลี่ยม - การแสดงผล แสดงผลพื้นที่สามเหลี่ยม ขีดจำกัดของโปรแกรม
คำนวณพื้นที่สามเหลี่ยมได้ครั้งละรูปเท่านั้น หากต้องการคำนวณอีก ต้องเปิดโปรแกรมใหม่
|
|
|
|
| 3. การออกแบบโปรแกรม (Program Design) เป็นการกำหนดลำดับขั้นตอนการทำงานของโปรแกรม หรือวิธีการที่จะใช้ในการแก้ปัญหา (Algorithm) เครื่องมือที่ใช้ในการออกแบบโปรแกรม เช่น รหัสเทียม (Psuedo-code) และผังงาน (Flowchart) มีรายละเอียดดังนี้
| ในการเขียนลำดับขั้นตอนการทำงานของโปรแกรมหรือการทำงานของแต่ละฟังก์ชัน โดยไม่ใช้ภาษาคอมพิวเตอร์โดยตรง แต่เป็นภาษาที่มนุษย์ใช้ อาจเป็นภาษาอังกฤษ หรือภาษาไทย ก็ได้
|
| ตัวอย่างรหัสเทียม โปรแกรมคำนวณพื้นที่สามเหลี่ยม
| เริ่มโปรแกรม ประกาศตัวแปร area , base , height เป็นจำนวนจริง
รับค่าความยาวฐานเก็บในตัวแปร base
รับค่าความสูง
เก็บในตัวแปร height
ประมวลผล หาพื้นที่สามเหลี่ยม area = 0.5 * base * height แสดงผล พื้นที่สามเหลี่ยม area จบโปรแกรม
|
|
|
| เป็นการเขียนลำดับขั้นตอนการทำงานของโปรแกรมหรือการทำงานของแต่ละฟังก์ชัน โดยใช้สัญลักษณ์แทนคำสั่ง โดยเขียนจากบนลงล่าง โดยใช้เส้นลูกศรแสดงทิศทาง
สัญลักษณ์ที่ใช้เขียนผังงานและความหมายตามมาตรฐาน ISO ที่ควรทราบมีดังนี้
| สัญลักษณ์ที่ใช้ในการเขียนผังงานทั่วไป
|
| สัญลักษณ์ที่ใช้เขียนผังงานที่เกี่ยวกับข้อมูลเข้า/ออก
|
|
|
| ตัวอย่างผังงาน โปรแกรมคำนวณพื้นที่สามเหลี่ยม
|
|
|
|
|
|
| 4. การเขียนโปรแกรม (Coding) การเขียนโปรแกรม คือ การเขียนรหัสคำสั่งโปรแกรมตามที่ออกแบบไว้ในผังงานหรือรหัสเทียม การเขียนโปรแกรมด้วยภาษาใด ขึ้นอยู่กับความเหมาะสมของงานและความถนัดของนักเขียนโปรแกรมด้วย เช่น ภาษาซี โดยอาจเขียนในโปรแกรมพิมพ์ข้อความ (Text editor) ใดก็ได้ เช่น Notepad , EditPlus หรือใช้โปรแกรมพิมพ์ข้อความที่มีอยู่ในชุดพัฒนาโปรแกรมของตัวแปลภาษาที่เรียกว่า ไอดีอี (IDE -
Integrated Development Environment) ซึ่งจะสะดวกกว่า แล้วบันทึก เก็บไว้เป็นแฟ้มโปรแกรม (Source File) โดยใช้นามสกุลตามข้อกำหนดของภาษาที่ใช้ เช่น .c หมายถึง โปรแกรมภาษาซี
| ตัวอย่างโปรแกรมภาษาซี โปรแกรมคำนวณพื้นที่สามเหลี่ยม ( trian.c )
| #include <stdio.h> int main(){ float area , base , height;
scanf("%f %f" , &base , &height);
area = 0.5 * base * height;
printf("Area of Triangle = %.2f" ,area);
return 0; }
|
|
|
| 5. การทดสอบโปรแกรม (Testing) และการแก้ไขข้อผิดพลาด (Debugging) การตรวจสอบโปรแกรมสามารถทำได้ด้วยสายตา ว่าโปรแกรมที่พิมพ์ตรงกับที่เขียนไว้หรือไม่
แล้วให้ตัวแปลภาษาทำการแปลโปรแกรม เรียกว่า คอมไพล์ (Compile) เพื่อหาว่ามีข้อผิดพลาดอะไรบ้าง เช่น ผิดรูปแบบคำสั่ง (Syntax Error) หรือผิดอื่น ๆ เมื่อพบที่ผิดก็ต้องแก้ไข แล้วแปลโปรแกรมใหม่ จนกว่าจะคอมไพล์ผ่านได้เป็นแฟ้มจุดหมาย (Object File) ซึ่งมีนามสกุลเป็น .obj ตัวอยางผลการคอมไพล์โปรแกรม
คำนวณพื้นที่สามเหลี่ยม (trian.c -> trian.obj)
เมื่อไม่มีข้อผิดพลาดจากการคอมไพล์แล้ว จึงทำการสร้างแฟ้มโปรแกรมใช้งานที่เป็นภาษาเครื่อง ซึ่งมีนามสกุล .exe เมื่อได้แฟ้มที่เป็นภาษาเครื่อง .exe แล้ว ก็สามารถทดสอบการทำงานของโปรแกรม เพื่อหาข้อผิดพลาดขณะทำงาน (Run-time Error) โดยใช้ข้อมูลทดสอบ (Test Data) และหาว่าตรรกะของโปรแกรมผิดหรือไม่ (Program Logic Error) โดยตรวจสอบและแก้ไขจนแน่ใจว่าโปรแกรมทำงานได้ถูกต้อง ตัวอยางผลการทดสอบโปรแกรม คำนวณพื้นที่สามเหลี่ยม (trian.c -> trian.exe)
|
| 6. การจัดทำเอกสารประกอบโปรแกรม (Documentation) การจัดทำคู่มือการใช้โปรแกรมและเอกสารประกอบโปรแกรม เพื่อให้ผู้ใช้งาน สามารถใช้โปรแกรมได้สะดวก
โดยคู่มือการใช้โปรแกรมควรอธิบายขั้นตอนต่าง ๆ ที่จำเป็นในการใช้งาน ความสามารถและขีดจำกัดของโปรแกรม ตัวอย่างการใช้งานต่าง ๆ เช่น การนำข้อมูล การแสดงผลหรือรายงาน ที่ได้จากการทำงานของโปรแกรม เป็นต้น
|
|
|
|