SlideShare a Scribd company logo
1 of 39
Download to read offline
ภาษาโปรแกรม
ภาษาโปรแกรม (Program Languages)
ภาษาโปรแกรม คือภาษาที่ประดิษฐขึ้นมาเพื่อใชสื่อสารกับเครื่อง
คอมพิวเตอร ภาษาโปรแกรมก็เหมือนภาษามนุษยที่จะตองใชวากยสัมพันธ
(syntax) และความหมาย (semantic) เพื่อกําหนดโครงสรางและ
ตีความหมายตามลําดับ ในโลกนี้มีภาษาโปรแกรมมากกวา 8,500 ภาษาที่
แตกตางกันไป และก็ยังมีภาษาใหมเกิดขึ้นทุกๆ ป ผูที่ใชงานภาษาโปรแกรมเพื่อ
เขียนโปรแกรมติดตอสื่อสารกับคอมพิวเตอรเรียกวา โปรแกรมเมอร
(programmer)
 ภาษาที่เครื่องเขาใจเรียกวาภาษาเครื่อง(Machine
Language) ซึ่งลักษณะคําสั่งจะเปนรหัสเลขฐาน 2 เมื่อมีการปอนคําสั่งเขา
ไปในเครื่องคอมพิวเตอร รหัสเลขฐาน 2 จะถูกเปลี่ยนเปนสัญญาณทางไฟฟาที่
คอมพิวเตอรเขาใจ แตถามนุษยตองปอนคําสั่งใหกับคอมพิวเตอรเปนเลขฐาน 2
นั้นจะทําไดยาก เพราะเปนภาษาที่มนุษยเขาใจยาก จึงมีการออกแบบตัวอักษร
ภาษาอังกฤษใหแทนคําสั่งรหัสเลขฐาน 2 เหลานั้น เรียกวารหัสนีโมนิก
(mnemonic) ภาษาคอมพิวเตอรที่ใชรหัสนีโมนิกในการเขียนโปรแกรม
เรียกวา ภาษาแอสเซมบลี สําหรับภาษาแอสเซมบลีเปนภาษาที่ทํางานไดเร็ว
เพราะเขาถึงหนวยประมวลผลไดเร็วที่สุด เราเรียกภาษานี้วาภาษาระดับต่ํา
(Low Language) ตอมาไดมีการพัฒนาชุดคําสั่งภาษาตางๆขึ้นมาเพื่อให
มีความใกลเคียงกับภาษาที่มนุษยเขาใจ จึงเรียกภาษาแบบนั้นวา ภาษา
ระดับสูง (High Language)
ภาษาโปรแกรมที่สําคัญ
 1. ภาษาเครื่อง (Machine Languages)
2. ภาษาระดับต่ํา (Low-level Languages) ไดแก ภาษาแอสเซมบลี
(Assembly)
3. ภาษาระดับสูง (High-level Languages) ไดแก
-ภาษาซี (C)
-ภาษาซีพลัสพลัส (C++)
-ภาษาซีชารป (C#)
-ภาษาปาสกาล (Pascal)
-ภาษาเบสิก (BASIC)
-ภาษาฟอรแทรน (FORTRAN)
-ภาษาจาวา (Java)
-ภาษาโปรล็อก (Prolog)
1. ภาษาเครื่อง
ภาษาเครื่อง (Machine Languages)เปนภาษาหรือคําสั่งที่ใชในการสั่งงานหรือติดตอกับ
เครื่องโดยตรง ลักษณะสําคัญของภาษาเครื่องจะประกอบดวยรหัสของเลขฐานสองซึ่งเทียบไดกับ
ลักษณะของสัญญาณทางไฟฟาเขากับหลักการทํางานของเครื่องสามารถเขาใจและพรอมที่จะ
ทํางานตามคําสั่งไดทันที ภาษาเครื่องจะมีกฎเกณฑทางไวยากรณคอนขางจํากัด โปรแกรมมี
ลักษณะคอนขางยุงยากซับซอนลักษณะของโปรแกรมจะประกอบดวยกลุมของรหัสคําสั่งซึ่ง
ประกอบดวยเลขฐานสองเรียงตอกัน ซึ่งผูเขียนโปรแกรมจะตองทราบเทคนิคการใชรหัสคําสั่ง
และจะตองจําตําแหนงของคําสั่งและขอมูลที่ถูกเก็บไว เพราะเนื่องจากเครื่องคอมพิวเตอรแตละ
บริษัทจะใชภาษาเครื่องของตนเอง และผูเขียนโปรแกรมจะตองเขาใจระบบการทํางานของเครื่อง
เปนอยางดี ดังนั้นการเขียนโปรแกรมเปนภาษาเครื่องจึงมีผูเขียนอยูในวงจํากัด เพราะตองมีความรู
ทางดานเครื่องและรหัสของเครื่องจึงจะเขียนโปรแกรมได ภาษาเครื่องของคอมพิวเตอรแตละ
ระบบจะแตกตางกัน ทําใหเกิดความไมสะดวกเมื่อมีการเปลี่ยนเครื่องคอมพิวเตอรระบบใหมก็
จะตองเขียนโปรแกรมใหม
2. ภาษาระดับต่ํา
ภาษาระดับต่ํา ในทางคอมพิวเตอร หมายถึง ภาษาที่อิงกับสถาปตยกรรม
คอมพิวเตอรใดสถาปตยกรรมหนึ่ง ซึ่งไมโครโพรเซสเซอรแตละรุน หรือ แตละตระกูล ก็
มักมีภาษาระดับต่ําที่แตกตางกัน และโดยปกติแลว หนึ่งคําสั่งในภาษาระดับต่ํา จะ
หมายถึงการสั่งงานคอมพิวเตอรใหทํางานหนึ่งอยาง (1 instruction = 1
operation) ภาษาระดับต่ํา มี 2 ภาษา คือ
2.1 ภาษาเครื่อง เปนภาษาเดียวที่ไมโครโพรเซสเซอรสามารถเขาใจ คําสั่งเปนตัวเลข
ลวน ๆ การอานและเขียนอาจตองใชเครื่องมือพิเศษ จึงไมคอยมีการใชภาษาเครื่องโดยตรง
2.2 ภาษาแอสเซมบลี เปนการปรับภาษาเครื่องใหสามารถเขียนไดสะดวกขึ้นโดยการพิมพ
คําสั่งที่เปน ตัวอักษรแทนตัวเลข เวลาเขียนเสร็จ จะตองใชตัวแปลโปรแกรมจึงจะใชงานได และ
ถึงแมวาไมใชภาษาเครื่องโดยตรง ผูเขียนโปรแกรมยังจําเปนตองเขาใจโครงสรางของไมโคร
โพรเซสเซอรที่กําลัง เขียนเปนอยางดี ( ภาษาแอสเซมบลี (Assembly Language) หมายถึง ภาษาที่
ใชในการเขียนโปรแกรมภาษาหนึ่งซึ่งจะทํางานโดยขึ้นกับรุนของไมโครโพรเซสเซอร หรือ
"หนวยประมวลผล" (CPU) ของเครื่องคอมพิวเตอร การใชภาษาแอสเซมบลีจําเปนตองผานการ
แปลภาษาดวยคอมไพเลอรเฉพาะเรียกวา แอสเซมเบลอร (assembler) ใหอยูในรูปของรหัสคําสั่ง
กอน โดยปกติ ภาษานี้คอนขางมีความยุงยากในการใชงาน และการเขียนโปรแกรมมีจํานวน
บรรทัดมากมากกวา เมื่อเปรียบเทียบกับการใชภาษาระดับสูง เชน ภาษา C หรือภาษา BASIC แต
จะใหผลลัพธการทํางานของโปรแกรมเร็วกวา และขนาดของตัวโปรแกรมมีขนาดเนื้อที่นอยกวา
โปรแกรมที่สรางจากภาษาอื่นมาก จึงนิยมใชภาษานี้เมื่อตองการประหยัดเวลาทํางานของเครื่อง
คอมพิวเตอร และเพิ่มประสิทธิภาพของโปรแกรม )
ภาษาระดับสูง (High Level Language) เปนภาษาที่ใชงายขึ้นกวาภาษาสัญลักษณ
โดยผูคิดคนภาษาไดออกแบบ คําสั่ง ไวยากรณ และกฎเกณฑตางๆ ออกมาใหรัดกุม และ
จําไดงาย ภาษาระดับสูงนี้ยังอาจจะแบงออกไดเปนหลายประเภท เชน ประเภทที่เหมาะ
กับงานวิทยาศาสตรและวิศวกรรมศาสตรไดแก ภาษา Fortran ภาษา BASIC ภาษา
PASCALภาษา C ประเภทที่เหมาะกับงานธุรกิจไดแก ภาษา COBOL ภาษา RPG
ประเภทที่เหมาะกับงานควบคุมเครื่องคอมพิวเตอรเอง ไดแก ภาษา C โปรแกรมที่จัดทํา
ขึ้นโดย ใชภาษาระดับนี้ก็เชนเดียวกับโปรแกรมภาษาสัญลักษณคือ จะตองใชตัวแปล
ภาษาแปลใหเปนโปรแกรมภาษาเครื่องกอน คอมพิวเตอรจึงจะเขาใจและทํางานใหได
ไดแก ภาษาดังตอไปนี้
3. ภาษาระดับสูง
ภาษาซี (C programming language) เปนภาษาโปรแกรมเชิงโครงสรางระดับสูง
สําหรับใชในระบบปฏิบัติการยูนิกซ ตอมาภายหลังไดถูกนําไปใชกับระบบปฏิบัติการ
อื่น ๆ และกลายเปนภาษาโปรแกรมหนึ่งที่ใชกันแพรหลายมากที่สุด ภาษาซีมีจุดเดนที่
ประสิทธิภาพในการทํางาน โปรแกรมคอมพิวเตอรที่เขียนดวยภาษาซีจึงทํางานได
รวดเร็ว ภาษาซีเปนภาษาโปรแกรมที่นิยมใชกันมากสําหรับพัฒนาระบบปฏิบัติการ,
ซอฟตแวรระบบ , ควบคุมไมโครคอนโทรลเลอร และเปนภาษาที่ใชกันทั่วไปใน
หลักสูตรวิทยาการคอมพิวเตอร
ภาษาซี
#include <stdio.h>
int main(void)
{
printf("hello, worldn");
return 0;
}
ตัวอยางโปรแกรมที่เขียนดวยภาษาซี
ภาษาซีพลัสพลัส (C++ programming language) เปนภาษาโปรแกรม
คอมพิวเตอรอเนกประสงค มีโครงสรางภาษาที่มีการจัดชนิดขอมูลแบบสแตติก
(statically typed) และสนับสนุนรูปแบบการเขียนโปรแกรมที่หลากหลาย (multi-
paradigm language)
ภาษาซีพลัสพลัส
#include <iostream>
int main()
{
std::cout << "hello, worldn";
}
ตัวอยางโปรแกรมที่เขียนดวยภาษา C++
ภาษา ซีชารป (C# Programming Language) เปนภาษาโปรแกรม
เชิงวัตถุทํางานบนดอตเน็ตเฟรมเวิรก พัฒนาโดยบริษัทไมโครซอฟทและ
มีAnders Hejlsberg โดยมีรากฐานมาจากภาษาซีพลัสพลัสและภาษา
อื่นๆ
ภาษาซีชารป
public class ExampleClass
{
public static void Main()
{
System.Console.WriteLine("Hello, world!");
}
}
ตัวอยางโปรแกรมที่เขียนดวยภาษา C#
ภาษา ปาสกาล (Pascal programming language) เปนภาษาโปรแกรมที่ใชกัน
อยางกวางขวาง โดยเฉพาะในวงการศึกษา คิดคนขึ้นโดย นิเคลาส แวรท (Niklaus
Wirth) นักวิทยาศาสตรคอมพิวเตอรชาวสวิตเซอรแลนด ในป ค.ศ. 1970 เพื่อชวยใน
การเรียนการสอนการเขียนโปรแกรมโครงสราง (structured programming). ภาษาปาส
กาลนั้นพัฒนาขึ้นมาจาก ภาษาอัลกอล (Algol) ซึ่งมีโครงสรางคลายกับภาษาปาสกาล
แตสามารถรองรับการเขียนโปรแกรมเชิงวัตถุ (object-oriented programming) ได
ภาษาปาสกาล
โปรแกรมภาษาปาสกาลทุกอัน จะเริ่มตนดวยคียเวิรด Program และสวน
ของโคดจะอยูระหวางคียเวิรด Begin และ End ภาษาปาสกาลนั้นไมสนใจความ
แตกตางระหวางตัวพิพมใหญและตัวพิพมเล็ก ("end" มีผลเทากับ "End") เซมิโค
ลอน (;) ใชเมื่อจบคําสั่ง และ จุลภาค (.) ใชเมื่อจบโปรแกรม
program HelloWorld(input, output);
begin
WriteLn('Hello, World!');
end.
โครงสรางอยางงาย
ภาษา เบสิก (BASIC programming language) เปนภาษาโปรแกรมที่ออกแบบมา
ใหใชงานไดงาย และยังไดรับความนิยมมาจนถึงทุกวันนี้ ชื่อภาษาเบสิก หรือ BASIC ยอ
มาจาก Beginner's All-purpose Symbolic Instruction Code ตองเขียนดวยตัวพิมพใหญ
เสมอ บริษัท ไมโครซอฟทไดนําภาษาเบสิกมาปรับปรุงใหทันสมัย และพัฒนาเครื่องมือ
พัฒนาโปรแกรม Visual Basic ทําใหเบสิกไดรับความนิยมในการพัฒนาโปรแกรมยุค
ใหม รุนลาสุดของวิชวลเบสิกเรียกวา VB.NET
ภาษาเบสิก
ภาษาฟอรแทรน (FORTRAN)
ภาษาฟอรแทรน (FORTRAN - FORmula TRANslation) จัดไดวาเปนภาษาระดับ
สูงภาษาแรกของโลก พัฒนาในป ค.ศ. 1954 โดยทีมนักคอมพิวเตอร บริษัท ไอบีเอ็ม
(IBM)
ตัวอยางโปรแกรมที่เขียนดวยภาษา FORTRAN
programme
cc
integer int
int = 12
write(*,*) 'The value of int is',
+ int
end
stop
ภาษา จาวา (Java programming language) เปนภาษาโปรแกรมเชิง
ซึ่งมีจุดประสงคเพื่อใชแทนภาษาซีพลัสพลัส (C++) โดยรูปแบบที่เพิ่มเติมขึ้นคลาย
กับภาษาอ็อบเจกตทีฟซี (Objective-C) แตเดิมภาษานี้เรียกวา ภาษาโอก (Oak) แตวามี
ปญหาทางลิขสิทธิ์ จึงเปลี่ยนไปใชชื่อ "จาวา" แทน แมวาจะมีชื่อคลายกัน แตภาษา
จาวาไมมีความเกี่ยวของใด ๆ กับภาษาจาวาสคริปต (JavaScript)
ภาษาจาวา
ภาษาโปรล็อก (Prolog) เปนภาษาสําหรับการเขียนโปรแกรมเชิง
ตรรกะ และถูกนําไปใชในโปรแกรมสําหรับปญญาประดิษฐ และภาษาศาสตร
เชิงคํานวณ (computational linguistics) โดยเฉพาะการประมวลผล
ภาษาธรรมชาติ ไวยากรณและความหมายของภาษานั้นเรียบงายและชัดเจน
(เปาหมายแรกของภาษาคือเปนเครื่องมือสําหรับนักภาษาศาสตรที่ไมรู
คอมพิวเตอร)
ภาษาโปรล็อก (Prolog)
การเขียนภาษาโปรแกรม คือ การใสชุดคําสั่งที่จะใหคอมพิวเตอรทํางาน ตาม
เปาหมายที่เราตองการ ซึ่งชุดคําสั่งที่ใสลงไปนั้น เรา(โปรแกรมเมอร) จะตองเปนผู
พิมพคําสั่งลงไปเอง และตองเปนคําสั่งที่ถูกตองตามหลักไวยากรณ (Syntax)และ
โครงสรางของภาษาที่เราเลือกใช (ดังนั้นเราจะตองเรียนรูเกี่ยวกับการใชรูปแบบคําสั่ง
ของภาษานั้น) หลังจากพิมพคําสั่งลงไปทั้งหมดเราก็จะไดมาซึ่งซอรสโคดของภาษา
โปรแกรมโดยปกติแลวจะอยูในรูปแบบขอความตัวอังกฤษธรรมดา ซึ่งไมสามารถ
นําไปใชงานได จะตองผานกระบวนการที่ทําใหซอรสโคดสามารถใชงานได เราเรียก
ขั้นตอนนี้วา การคอมไพล หรือ อินเทอรพรีท หรือ แอสเซม แลวแตภาษาโปรแกรมที่
เราใช ดังนี้
การเขียนภาษาโปรแกรม (Programing)
1. ถาเปน ภาษาปาสคาล,ภาษาซี,ภาษาเบสิก เรียกตัวแปลซอรสโคดชนิด
นี้วา คอมไพเลอร คอมไพล เปนการแปลซอรสโคดนั้นใหเปนภาษาเครื่อง
(machine language) หนึ่งครั้ง เพื่อใหไดแฟมขอมูลที่สามารถทํางานได
2. ถาใช ภาษา Logo, HTML เรียกตัวแปลซอรสโคดชนิดนี้วา อินเทอร
พรีทเตอร อินเทอรพรีท เปนการแปลซอรสโคดใหเปนภาษาเครื่อง(machine
language) ทุกครั้งที่ตองการใชโปรแกรม
3. ถาใชภาษาแอสเซ็มบลี เทานั้นเรียกตัวแปลซอรสโคดชนิดนี้วา แอส
เซ็มเบลอร แอสเซ็ม เปนการแปลซอรสโคดนั้นใหเปนภาษาเครื่อง(machine
language) หนึ่งครั้ง เพื่อใหไดแฟมขอมูลที่สามารถทํางานได
มีกระบวนการทํางานดังนี้
•วิเคราะหปญหา (Analysis)
•วางแผนและออกแบบการทํางานของโปรแกรม (Planing & Design)
•เขียนโปรแกรม (Coding)
•ทดสอบโปรแกรม (Testing)
•จัดทําเอกสารและการบํารุงรักษา (Documentation)
ขั้นตอนการพัฒนาโปรแกรม
ขั้นตอนนี้ถือวาเปนขั้นตอนที่สําคัญที่สุด นักวิเคราะหระบบ / ผูเขียนโปรแกรม
ตองวิเคราะหปญหาใหออกวาจะเขียนโปรแกรมเพื่อแกปญหาอะไร ตองใชขอมูล
อะไรบางเพื่อใหไดผลลัพธตามตองการ มีขั้นตอนการประมวลผลอยางไร เปนตน ซึ่ง
ในการวิเคราะหปญหานั้นมีประเด็นที่ตองพิจารณาออกมาเปนขอๆ ดังนี้
1.วิเคราะหปญหา (Analysis)
1.1 ตองการอะไร
จะตองอธิบายวางานที่ตองการใหคอมพิวเตอรทํานั้น ตองการใหทําอะไร โดยอาจ
เปนการเขียนออกมาเปนขอๆ ก็ได
1.2 ตองการเอาตพุตอยางไร
อธิบายลักษณะของผลลัพธอยางละเอียดวาตองการเปนอยางไร เชน ตองการให
แสดงผลออกทางจอภาพ หรือ เครื่องพิมพ หรือลําโพง ผลลัพธที่ไดตองการทศนิยมกี่
ตําแหนง การแสดงผลหนาแรกเปนอยางไร หนาตอไปเปนอยางไร มีเลขหนาหรือไม มี
สวนหัวสวนทายของเอกสารหรือไมเปนตน
1.3 ขอมูลเขาเปนอยางไร
สวนนี้มักจะออกแบบหลังจากไดออกแบบสวนแสดงผลไปแลว โดยเมื่อทราบ
รูปแบบของผลลัพธแลว จะตองมาดูวาถาหากตองการขอมูลแบบที่ตองการ แลวขอมูล
ทางอิตพุตควรเปนอยางไร
1.4 ตัวแปรที่ใช
เพื่อบอกวาจะใชตัวแปรอะไรแทนขอมูลนําเขา หรือแทนคาที่อยูในระหวางการ
ประมวลผล ตลอดจนตัวแปรที่ใชแสดงผลลัพธ
1.5 วิธีการประมวลผลเปนอยางไร
อธิบายถึงลําดับขั้นตอนของการประมวลผล วิธีการแกปญหาเพื่อใหไดผลลัพธ
ตามที่ตองการ โดยตองพิจารณาวาขอมูลตางๆที่รับเขาไปนั้นจะตองเก็บในตัวแปรกี่ตัว
เปนตัวแปรประเภทใด การประมวลผลมีขั้นตอนกระทํากับตัวแปรนั้นๆอยางไรบาง ถา
หากตองการประมวลผลกับขอมูลหลายคาจะรับขอมูลเขาไปที่ละคาแลวประมวลผล หรือ
รับขอมูลเขาไปทั้งหมดแลวประมวลผล
ตัวอยางที่ 1
จงเขียนแนวทางการแกปญหาดวยคอมพิวเตอร สําหรับให
คอมพิวเตอรคํานวณหาผลบวกของเลข 2 จํานวน จากนั้นใหแสดงผลลัพธที่
คํานวณได
วิธีทํา
ตองการอะไร ตองการหาผลบวกของเลข 2 จํานวน
ตองการเอาตพุตอยางไร ตองการเอาตพุตเปนผลลัพธที่ไดจากการบวก
เลข 2 จํานวน
ขอมูลเขา เลขจํานวนจริง 2 จํานวน เลขจํานวนจริงที่ 1
เก็บในตัวแปรชื่อ
num1 , เลขจํานวนจริงที่ 2 เก็บในตัวแปรชื่อ num2
วิธีการประมวลผล
กําหนดวิธีการคํานวณ
ผลลัพธ = เลขจํานวนจริงที่ 1 + เลขจํานวนจริงที่ 2
ขั้นตอนการประมวลผล
1. เริ่มตน
2. รับคาตัวเลขจํานวนจริงตัวที่ 1 , รับคาตัวเลขจํานวนจริงตัวที่ 2
3. คํานวณ ผลลัพธ = เลขจํานวนจริงที่ 1 + เลขจํานวนจริงที่ 2
4. แสดงผลลัพธ
5. จบการทํางาน
แบบฝกหัด
1. จงวิเคราะหวิธีการรับประทานยา ที่แบงตามอายุผูทานดังนี้
อายุมากกวา 10 ป ครั้งละ 2 ชอนชา
อายุมากกวา 3 – 10 ป ครั้งละ 1 ชอนชา
อายุมากกวา 1 – 3 ป ครั้งละ ½ ชอนชา
อายุต่ํากวา 1 ป หามรับประทาน
.......................................................................................................
.
2. จงวิเคราะหการทํางานของลิฟต ที่มีการทํางาน 6 ชั้น
จงเขียนแนวทางการแกปญหาดวยคอมพิวเตอร
1.โปรแกรมตัดเกรดโดยใสคะแนนทางแปนพิมพ แลวเปรียบเทียบคะแนนกับ
เกณฑการตัดเกรด ดังนี้
คะแนน 80 ขึ้นไป พิมพ A
คะแนน 70 ขึ้นไป พิมพ B
คะแนน 60 ขึ้นไป พิมพ C
คะแนน 50 ขึ้นไป พิมพ D
ต่ํากวานั้น พิมพ F
2. โปรแกรม คูณ 2
3. แสดงผลบวกของตัวเลขจํานวน 4 จํานวน
การวางแผน คือการนําปญหาที่วิเคราะหไดจากขั้นตอนที่ 1 มาวางแผนการ
ทํางานอยางเปน
ขั้นตอนวาจะตองเขียนโปรแกรมอยางไร จะใหโปรแกรมทําอะไรกอนหลัง การ
วางแผนอยางเปน
ขั้นตอนนี้ เรียกวา อัลกอริทึม (Algorithm) ซึ่งอัลกอริทึมสามารถทําได 2
รูปแบบคือ
1.อัลกอริทึมแบบ ซูโดโคด (Pseudocode) คือ การเขียนอัลกอริทึมโดยใช
ประโยคภาษาอังกฤษที่สื่อความหมายงายๆวาตองการใหโปรแกรมทําอะไรอยาง
เปนลําดับขั้นตอน สามารถอานแลวเขาใจไดทันที่
2. อัลกอริทึมแบบ โฟลวชารต (Flowchart) คือ การเขียนอัลกอริทึมโดยใช
สัญลักษณรูปภาพเปนตัวสื่อความหมายวาตองการใหโปรแกรมทําอะไรอยางเปน
ลําดับขั้นตอน
ตัวอยาง การทําอัลกอริทึมแบบซูโดโคด (Pseudocode)
start
Read x
Read y
Compute sum = x+y
Print sum
stop
 ตัวอยางการทําอัลกอริทึมแบบ โฟลวชารต (Flowchart)
3. การเขียนโปรแกรม (coding)
เปนขั้นตอนของการพิมพชุดคําสั่งของภาษาโปรแกรมตามลําดับการทํางานของ
โปรแกรมจากอัลกอริทึม ในขั้นตอนที่ 2 โดยชุดคําสั่งที่พิมพจะตองถูกหลังไวยกรณ
และโครงสรางของภาษาโปรแกรม หลังจากนั้นนําซอรสโคดไปผานกระบวนการแปล
คําสั่งไปเปนภาษาที่เครื่องเขาใจเราเรียกกระบวนการนี้วา คอมไพล หรือ อินเทอร
พรีท หรือ แอสเซ็ม แลวแตภาษาโปรแกรมที่เราใชในการเขียน
4.ทดสอบโปรแกรม (Testing)
 เปนขั้นตอนการทดสอบการทํางานของโปรแกรมวาถูกตองตามเปาหมายที่
ตองการหรือไม หากตองมีการปอนคาตางๆที่เกี่ยวกับการทํางานของโปรแกรมก็ตอง
ปอนคาเขาไปในโปรแกรมเพื่อใหการทํางานของโปรแกรมสมบูรณหลังจากนั้น
ตรวจสอบผลลัพธที่ไดวาถูกตองหรือไม โดยทดสอบหลายๆครั้งหลายๆกรณี แตหาก
วาผลลัพธที่ไดไมถูกตอง ผูเขียนโปรแกรมก็ตองกลับไปตรวจสอบโปรแกรมใหมอีก
ครั้งวามีการเขียนโปรแกรมผิดหรือไม
5.จัดทําคูมือและบํารุงรักษาโปรแกรม (Documentation)
 จุดประสงคในการทําคูมือ คือ ชวยใหผูอื่นที่เกี่ยวของสามารถเขามาศึกษาโปรแกรม
ไดงายขึ้น ทั้งในดานการใชงานของโปรแกรม หรือ การศึกษาซอรสโคดของโปรแกรม
เพื่อนําไปพัฒนาโปรแกรมตอยอดขึ้นไปอีก หรือศึกษาเกี่ยวกับการทํางานของ
โปรแกรม เปนตน
สัญลักษณรูปภาพที่นําไปใชในการทําอัลกอริทึมแบบโฟลวชารต
บทที่ 1

More Related Content

What's hot

16 พีรพล-ปวช3-7
16 พีรพล-ปวช3-716 พีรพล-ปวช3-7
16 พีรพล-ปวช3-7naraporn buanuch
 
การสร างงานโปรแกรมด วยภาษาคอมพ_วเตอร_
การสร างงานโปรแกรมด วยภาษาคอมพ_วเตอร_การสร างงานโปรแกรมด วยภาษาคอมพ_วเตอร_
การสร างงานโปรแกรมด วยภาษาคอมพ_วเตอร_Aoy-Phisit Modify-Computer
 
ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์Primprapa Palmy Eiei
 
การสร้างงานโปรเเกรมด้วยภาษาคอมพิวเตอร์
การสร้างงานโปรเเกรมด้วยภาษาคอมพิวเตอร์การสร้างงานโปรเเกรมด้วยภาษาคอมพิวเตอร์
การสร้างงานโปรเเกรมด้วยภาษาคอมพิวเตอร์Pete Panupong
 
การเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาการเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาThanyalak Aranwatthananon
 
นาย สิริกร ภูษาทอง
นาย สิริกร ภูษาทองนาย สิริกร ภูษาทอง
นาย สิริกร ภูษาทองDai Punyawat
 
การสร้างโปรแกรมด้วยภาษาคอมพิมเตอร์
การสร้างโปรแกรมด้วยภาษาคอมพิมเตอร์การสร้างโปรแกรมด้วยภาษาคอมพิมเตอร์
การสร้างโปรแกรมด้วยภาษาคอมพิมเตอร์Adisak' Jame
 
1.ซอฟต์แวร์และภาษาคอมพิวเตอร์
1.ซอฟต์แวร์และภาษาคอมพิวเตอร์1.ซอฟต์แวร์และภาษาคอมพิวเตอร์
1.ซอฟต์แวร์และภาษาคอมพิวเตอร์Saipanyarangsit School
 
36 ธีรศักดิ์-ปวช.3-7
36 ธีรศักดิ์-ปวช.3-736 ธีรศักดิ์-ปวช.3-7
36 ธีรศักดิ์-ปวช.3-7naraporn buanuch
 
ข้อสอบกลางภาค (1)
ข้อสอบกลางภาค (1)ข้อสอบกลางภาค (1)
ข้อสอบกลางภาค (1)Non Thanawat
 
08 ณัฐนนท์-3-9
08 ณัฐนนท์-3-908 ณัฐนนท์-3-9
08 ณัฐนนท์-3-9naraporn buanuch
 
สอบกลางภาคเรียน วิชาคอมพิวเตอร์
สอบกลางภาคเรียน วิชาคอมพิวเตอร์สอบกลางภาคเรียน วิชาคอมพิวเตอร์
สอบกลางภาคเรียน วิชาคอมพิวเตอร์Pakkapong Kerdmanee
 

What's hot (19)

Chepter2
Chepter2Chepter2
Chepter2
 
16 พีรพล-ปวช3-7
16 พีรพล-ปวช3-716 พีรพล-ปวช3-7
16 พีรพล-ปวช3-7
 
การเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาการเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษา
 
การสร างงานโปรแกรมด วยภาษาคอมพ_วเตอร_
การสร างงานโปรแกรมด วยภาษาคอมพ_วเตอร_การสร างงานโปรแกรมด วยภาษาคอมพ_วเตอร_
การสร างงานโปรแกรมด วยภาษาคอมพ_วเตอร_
 
ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์
 
การสร้างงานโปรเเกรมด้วยภาษาคอมพิวเตอร์
การสร้างงานโปรเเกรมด้วยภาษาคอมพิวเตอร์การสร้างงานโปรเเกรมด้วยภาษาคอมพิวเตอร์
การสร้างงานโปรเเกรมด้วยภาษาคอมพิวเตอร์
 
โปรแกรมและภาษาคอมพิวเตอร์
โปรแกรมและภาษาคอมพิวเตอร์โปรแกรมและภาษาคอมพิวเตอร์
โปรแกรมและภาษาคอมพิวเตอร์
 
การเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาการเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษา
 
นาย สิริกร ภูษาทอง
นาย สิริกร ภูษาทองนาย สิริกร ภูษาทอง
นาย สิริกร ภูษาทอง
 
การสร้างโปรแกรมด้วยภาษาคอมพิมเตอร์
การสร้างโปรแกรมด้วยภาษาคอมพิมเตอร์การสร้างโปรแกรมด้วยภาษาคอมพิมเตอร์
การสร้างโปรแกรมด้วยภาษาคอมพิมเตอร์
 
1.ซอฟต์แวร์และภาษาคอมพิวเตอร์
1.ซอฟต์แวร์และภาษาคอมพิวเตอร์1.ซอฟต์แวร์และภาษาคอมพิวเตอร์
1.ซอฟต์แวร์และภาษาคอมพิวเตอร์
 
Lesson1
Lesson1Lesson1
Lesson1
 
งาน
งานงาน
งาน
 
36 ธีรศักดิ์-ปวช.3-7
36 ธีรศักดิ์-ปวช.3-736 ธีรศักดิ์-ปวช.3-7
36 ธีรศักดิ์-ปวช.3-7
 
Intro program php
Intro program phpIntro program php
Intro program php
 
ข้อสอบกลางภาค (1)
ข้อสอบกลางภาค (1)ข้อสอบกลางภาค (1)
ข้อสอบกลางภาค (1)
 
08 ณัฐนนท์-3-9
08 ณัฐนนท์-3-908 ณัฐนนท์-3-9
08 ณัฐนนท์-3-9
 
สอบกลางภาคเรียน วิชาคอมพิวเตอร์
สอบกลางภาคเรียน วิชาคอมพิวเตอร์สอบกลางภาคเรียน วิชาคอมพิวเตอร์
สอบกลางภาคเรียน วิชาคอมพิวเตอร์
 
Language
LanguageLanguage
Language
 

Similar to บทที่ 1

ภาษา C
ภาษา Cภาษา C
ภาษา Cnutty_npk
 
การเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาการเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาJiranan Thongrit
 
การเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาการเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาJiranan Thongrit
 
การสร้างงานโปรแกรมคอมพิวเตอร์ด้วยภาษาคอมพิวเตอร์
การสร้างงานโปรแกรมคอมพิวเตอร์ด้วยภาษาคอมพิวเตอร์การสร้างงานโปรแกรมคอมพิวเตอร์ด้วยภาษาคอมพิวเตอร์
การสร้างงานโปรแกรมคอมพิวเตอร์ด้วยภาษาคอมพิวเตอร์ttyuj tgyhuj
 
ภาษาคอมพิวเตอร์ ม.3
ภาษาคอมพิวเตอร์ ม.3ภาษาคอมพิวเตอร์ ม.3
ภาษาคอมพิวเตอร์ ม.3Diiz Yokiiz
 
6 บุญเกียรติ-ปวช.3-7
6 บุญเกียรติ-ปวช.3-76 บุญเกียรติ-ปวช.3-7
6 บุญเกียรติ-ปวช.3-7naraporn buanuch
 
28 ธันย์ชนก-ปวช.3-7
28 ธันย์ชนก-ปวช.3-728 ธันย์ชนก-ปวช.3-7
28 ธันย์ชนก-ปวช.3-7naraporn buanuch
 
การสร้างงานโปรแกรมด้วยภาษาคอมพิวเตอร์ ฟลุ๊ค
การสร้างงานโปรแกรมด้วยภาษาคอมพิวเตอร์  ฟลุ๊คการสร้างงานโปรแกรมด้วยภาษาคอมพิวเตอร์  ฟลุ๊ค
การสร้างงานโปรแกรมด้วยภาษาคอมพิวเตอร์ ฟลุ๊คThidaporn Kaewta
 
นาวสาว หัทยา
นาวสาว   หัทยานาวสาว   หัทยา
นาวสาว หัทยาJiJee Pj
 
การเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาการเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาChatchaChantavaranurak
 
การเขียนโปรแกรม
การเขียนโปรแกรมการเขียนโปรแกรม
การเขียนโปรแกรมthorthib
 
32 วรดร-ปวช.3-7
32 วรดร-ปวช.3-732 วรดร-ปวช.3-7
32 วรดร-ปวช.3-7naraporn buanuch
 
ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์Diiz Yokiiz
 
การเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาการเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาN'Name Phuthiphong
 

Similar to บทที่ 1 (20)

ภาษา C
ภาษา Cภาษา C
ภาษา C
 
Introprogramphp
IntroprogramphpIntroprogramphp
Introprogramphp
 
Computer Language
Computer LanguageComputer Language
Computer Language
 
ภาษาเบสิก
ภาษาเบสิกภาษาเบสิก
ภาษาเบสิก
 
การเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาการเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษา
 
การเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาการเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษา
 
งานนำเสนอ
งานนำเสนองานนำเสนอ
งานนำเสนอ
 
การสร้างงานโปรแกรมคอมพิวเตอร์ด้วยภาษาคอมพิวเตอร์
การสร้างงานโปรแกรมคอมพิวเตอร์ด้วยภาษาคอมพิวเตอร์การสร้างงานโปรแกรมคอมพิวเตอร์ด้วยภาษาคอมพิวเตอร์
การสร้างงานโปรแกรมคอมพิวเตอร์ด้วยภาษาคอมพิวเตอร์
 
ภาษาคอมพิวเตอร์ ม.3
ภาษาคอมพิวเตอร์ ม.3ภาษาคอมพิวเตอร์ ม.3
ภาษาคอมพิวเตอร์ ม.3
 
6 บุญเกียรติ-ปวช.3-7
6 บุญเกียรติ-ปวช.3-76 บุญเกียรติ-ปวช.3-7
6 บุญเกียรติ-ปวช.3-7
 
28 ธันย์ชนก-ปวช.3-7
28 ธันย์ชนก-ปวช.3-728 ธันย์ชนก-ปวช.3-7
28 ธันย์ชนก-ปวช.3-7
 
Pdf
PdfPdf
Pdf
 
งาน #1
งาน #1งาน #1
งาน #1
 
การสร้างงานโปรแกรมด้วยภาษาคอมพิวเตอร์ ฟลุ๊ค
การสร้างงานโปรแกรมด้วยภาษาคอมพิวเตอร์  ฟลุ๊คการสร้างงานโปรแกรมด้วยภาษาคอมพิวเตอร์  ฟลุ๊ค
การสร้างงานโปรแกรมด้วยภาษาคอมพิวเตอร์ ฟลุ๊ค
 
นาวสาว หัทยา
นาวสาว   หัทยานาวสาว   หัทยา
นาวสาว หัทยา
 
การเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาการเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษา
 
การเขียนโปรแกรม
การเขียนโปรแกรมการเขียนโปรแกรม
การเขียนโปรแกรม
 
32 วรดร-ปวช.3-7
32 วรดร-ปวช.3-732 วรดร-ปวช.3-7
32 วรดร-ปวช.3-7
 
ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์
 
การเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษาการเขียนโปรแกรมภาษา
การเขียนโปรแกรมภาษา
 

More from Patcharee Pawleung

ประกาศสอบราคาครุภัณฑ์เครื่องอัดฟาง (ครั้งที่ 2)
ประกาศสอบราคาครุภัณฑ์เครื่องอัดฟาง (ครั้งที่ 2)ประกาศสอบราคาครุภัณฑ์เครื่องอัดฟาง (ครั้งที่ 2)
ประกาศสอบราคาครุภัณฑ์เครื่องอัดฟาง (ครั้งที่ 2)Patcharee Pawleung
 
ยกเลิกการสอบราคาซื้อครุภัณฑ์เครื่องอัดฟาง
ยกเลิกการสอบราคาซื้อครุภัณฑ์เครื่องอัดฟางยกเลิกการสอบราคาซื้อครุภัณฑ์เครื่องอัดฟาง
ยกเลิกการสอบราคาซื้อครุภัณฑ์เครื่องอัดฟางPatcharee Pawleung
 
บทที่ 2 การเขียนโปรแกรม
บทที่ 2 การเขียนโปรแกรมบทที่ 2 การเขียนโปรแกรม
บทที่ 2 การเขียนโปรแกรมPatcharee Pawleung
 
สอบราคาครั้งที่ 3
สอบราคาครั้งที่ 3สอบราคาครั้งที่ 3
สอบราคาครั้งที่ 3Patcharee Pawleung
 
เครื่องทุ่นแรงการเกษตร
เครื่องทุ่นแรงการเกษตรเครื่องทุ่นแรงการเกษตร
เครื่องทุ่นแรงการเกษตรPatcharee Pawleung
 
9ข้อมูลเศรฐกิจและสังคม
9ข้อมูลเศรฐกิจและสังคม9ข้อมูลเศรฐกิจและสังคม
9ข้อมูลเศรฐกิจและสังคมPatcharee Pawleung
 
8ข้อมูลสถานประกอบการ
8ข้อมูลสถานประกอบการ8ข้อมูลสถานประกอบการ
8ข้อมูลสถานประกอบการPatcharee Pawleung
 
7ข้อมูลอาคารสถานที่
7ข้อมูลอาคารสถานที่7ข้อมูลอาคารสถานที่
7ข้อมูลอาคารสถานที่Patcharee Pawleung
 
6ข้อมูลครุภัณฑ์
6ข้อมูลครุภัณฑ์6ข้อมูลครุภัณฑ์
6ข้อมูลครุภัณฑ์Patcharee Pawleung
 
5ข้อมูลงบประมาณ
5ข้อมูลงบประมาณ5ข้อมูลงบประมาณ
5ข้อมูลงบประมาณPatcharee Pawleung
 
4ข้อมูลหลักสูตร
4ข้อมูลหลักสูตร4ข้อมูลหลักสูตร
4ข้อมูลหลักสูตรPatcharee Pawleung
 
2ข้อมูลบุคลากร
2ข้อมูลบุคลากร2ข้อมูลบุคลากร
2ข้อมูลบุคลากรPatcharee Pawleung
 
3ข้อมูลนักเรียนนักศึกษา
3ข้อมูลนักเรียนนักศึกษา3ข้อมูลนักเรียนนักศึกษา
3ข้อมูลนักเรียนนักศึกษาPatcharee Pawleung
 
1ข้อมูลวิทยาลัย
1ข้อมูลวิทยาลัย1ข้อมูลวิทยาลัย
1ข้อมูลวิทยาลัยPatcharee Pawleung
 
รายงานประเมินตนเอง2556
รายงานประเมินตนเอง2556รายงานประเมินตนเอง2556
รายงานประเมินตนเอง2556Patcharee Pawleung
 
รายงานการประเมินตนเอง2555
รายงานการประเมินตนเอง2555รายงานการประเมินตนเอง2555
รายงานการประเมินตนเอง2555Patcharee Pawleung
 
รายงานการประเมินตนเอง2554
รายงานการประเมินตนเอง2554รายงานการประเมินตนเอง2554
รายงานการประเมินตนเอง2554Patcharee Pawleung
 

More from Patcharee Pawleung (17)

ประกาศสอบราคาครุภัณฑ์เครื่องอัดฟาง (ครั้งที่ 2)
ประกาศสอบราคาครุภัณฑ์เครื่องอัดฟาง (ครั้งที่ 2)ประกาศสอบราคาครุภัณฑ์เครื่องอัดฟาง (ครั้งที่ 2)
ประกาศสอบราคาครุภัณฑ์เครื่องอัดฟาง (ครั้งที่ 2)
 
ยกเลิกการสอบราคาซื้อครุภัณฑ์เครื่องอัดฟาง
ยกเลิกการสอบราคาซื้อครุภัณฑ์เครื่องอัดฟางยกเลิกการสอบราคาซื้อครุภัณฑ์เครื่องอัดฟาง
ยกเลิกการสอบราคาซื้อครุภัณฑ์เครื่องอัดฟาง
 
บทที่ 2 การเขียนโปรแกรม
บทที่ 2 การเขียนโปรแกรมบทที่ 2 การเขียนโปรแกรม
บทที่ 2 การเขียนโปรแกรม
 
สอบราคาครั้งที่ 3
สอบราคาครั้งที่ 3สอบราคาครั้งที่ 3
สอบราคาครั้งที่ 3
 
เครื่องทุ่นแรงการเกษตร
เครื่องทุ่นแรงการเกษตรเครื่องทุ่นแรงการเกษตร
เครื่องทุ่นแรงการเกษตร
 
9ข้อมูลเศรฐกิจและสังคม
9ข้อมูลเศรฐกิจและสังคม9ข้อมูลเศรฐกิจและสังคม
9ข้อมูลเศรฐกิจและสังคม
 
8ข้อมูลสถานประกอบการ
8ข้อมูลสถานประกอบการ8ข้อมูลสถานประกอบการ
8ข้อมูลสถานประกอบการ
 
7ข้อมูลอาคารสถานที่
7ข้อมูลอาคารสถานที่7ข้อมูลอาคารสถานที่
7ข้อมูลอาคารสถานที่
 
6ข้อมูลครุภัณฑ์
6ข้อมูลครุภัณฑ์6ข้อมูลครุภัณฑ์
6ข้อมูลครุภัณฑ์
 
5ข้อมูลงบประมาณ
5ข้อมูลงบประมาณ5ข้อมูลงบประมาณ
5ข้อมูลงบประมาณ
 
4ข้อมูลหลักสูตร
4ข้อมูลหลักสูตร4ข้อมูลหลักสูตร
4ข้อมูลหลักสูตร
 
2ข้อมูลบุคลากร
2ข้อมูลบุคลากร2ข้อมูลบุคลากร
2ข้อมูลบุคลากร
 
3ข้อมูลนักเรียนนักศึกษา
3ข้อมูลนักเรียนนักศึกษา3ข้อมูลนักเรียนนักศึกษา
3ข้อมูลนักเรียนนักศึกษา
 
1ข้อมูลวิทยาลัย
1ข้อมูลวิทยาลัย1ข้อมูลวิทยาลัย
1ข้อมูลวิทยาลัย
 
รายงานประเมินตนเอง2556
รายงานประเมินตนเอง2556รายงานประเมินตนเอง2556
รายงานประเมินตนเอง2556
 
รายงานการประเมินตนเอง2555
รายงานการประเมินตนเอง2555รายงานการประเมินตนเอง2555
รายงานการประเมินตนเอง2555
 
รายงานการประเมินตนเอง2554
รายงานการประเมินตนเอง2554รายงานการประเมินตนเอง2554
รายงานการประเมินตนเอง2554
 

บทที่ 1

  • 2. ภาษาโปรแกรม (Program Languages) ภาษาโปรแกรม คือภาษาที่ประดิษฐขึ้นมาเพื่อใชสื่อสารกับเครื่อง คอมพิวเตอร ภาษาโปรแกรมก็เหมือนภาษามนุษยที่จะตองใชวากยสัมพันธ (syntax) และความหมาย (semantic) เพื่อกําหนดโครงสรางและ ตีความหมายตามลําดับ ในโลกนี้มีภาษาโปรแกรมมากกวา 8,500 ภาษาที่ แตกตางกันไป และก็ยังมีภาษาใหมเกิดขึ้นทุกๆ ป ผูที่ใชงานภาษาโปรแกรมเพื่อ เขียนโปรแกรมติดตอสื่อสารกับคอมพิวเตอรเรียกวา โปรแกรมเมอร (programmer)
  • 3.  ภาษาที่เครื่องเขาใจเรียกวาภาษาเครื่อง(Machine Language) ซึ่งลักษณะคําสั่งจะเปนรหัสเลขฐาน 2 เมื่อมีการปอนคําสั่งเขา ไปในเครื่องคอมพิวเตอร รหัสเลขฐาน 2 จะถูกเปลี่ยนเปนสัญญาณทางไฟฟาที่ คอมพิวเตอรเขาใจ แตถามนุษยตองปอนคําสั่งใหกับคอมพิวเตอรเปนเลขฐาน 2 นั้นจะทําไดยาก เพราะเปนภาษาที่มนุษยเขาใจยาก จึงมีการออกแบบตัวอักษร ภาษาอังกฤษใหแทนคําสั่งรหัสเลขฐาน 2 เหลานั้น เรียกวารหัสนีโมนิก (mnemonic) ภาษาคอมพิวเตอรที่ใชรหัสนีโมนิกในการเขียนโปรแกรม เรียกวา ภาษาแอสเซมบลี สําหรับภาษาแอสเซมบลีเปนภาษาที่ทํางานไดเร็ว เพราะเขาถึงหนวยประมวลผลไดเร็วที่สุด เราเรียกภาษานี้วาภาษาระดับต่ํา (Low Language) ตอมาไดมีการพัฒนาชุดคําสั่งภาษาตางๆขึ้นมาเพื่อให มีความใกลเคียงกับภาษาที่มนุษยเขาใจ จึงเรียกภาษาแบบนั้นวา ภาษา ระดับสูง (High Language)
  • 4. ภาษาโปรแกรมที่สําคัญ  1. ภาษาเครื่อง (Machine Languages) 2. ภาษาระดับต่ํา (Low-level Languages) ไดแก ภาษาแอสเซมบลี (Assembly) 3. ภาษาระดับสูง (High-level Languages) ไดแก -ภาษาซี (C) -ภาษาซีพลัสพลัส (C++) -ภาษาซีชารป (C#) -ภาษาปาสกาล (Pascal) -ภาษาเบสิก (BASIC) -ภาษาฟอรแทรน (FORTRAN) -ภาษาจาวา (Java) -ภาษาโปรล็อก (Prolog)
  • 5. 1. ภาษาเครื่อง ภาษาเครื่อง (Machine Languages)เปนภาษาหรือคําสั่งที่ใชในการสั่งงานหรือติดตอกับ เครื่องโดยตรง ลักษณะสําคัญของภาษาเครื่องจะประกอบดวยรหัสของเลขฐานสองซึ่งเทียบไดกับ ลักษณะของสัญญาณทางไฟฟาเขากับหลักการทํางานของเครื่องสามารถเขาใจและพรอมที่จะ ทํางานตามคําสั่งไดทันที ภาษาเครื่องจะมีกฎเกณฑทางไวยากรณคอนขางจํากัด โปรแกรมมี ลักษณะคอนขางยุงยากซับซอนลักษณะของโปรแกรมจะประกอบดวยกลุมของรหัสคําสั่งซึ่ง ประกอบดวยเลขฐานสองเรียงตอกัน ซึ่งผูเขียนโปรแกรมจะตองทราบเทคนิคการใชรหัสคําสั่ง และจะตองจําตําแหนงของคําสั่งและขอมูลที่ถูกเก็บไว เพราะเนื่องจากเครื่องคอมพิวเตอรแตละ บริษัทจะใชภาษาเครื่องของตนเอง และผูเขียนโปรแกรมจะตองเขาใจระบบการทํางานของเครื่อง เปนอยางดี ดังนั้นการเขียนโปรแกรมเปนภาษาเครื่องจึงมีผูเขียนอยูในวงจํากัด เพราะตองมีความรู ทางดานเครื่องและรหัสของเครื่องจึงจะเขียนโปรแกรมได ภาษาเครื่องของคอมพิวเตอรแตละ ระบบจะแตกตางกัน ทําใหเกิดความไมสะดวกเมื่อมีการเปลี่ยนเครื่องคอมพิวเตอรระบบใหมก็ จะตองเขียนโปรแกรมใหม
  • 6. 2. ภาษาระดับต่ํา ภาษาระดับต่ํา ในทางคอมพิวเตอร หมายถึง ภาษาที่อิงกับสถาปตยกรรม คอมพิวเตอรใดสถาปตยกรรมหนึ่ง ซึ่งไมโครโพรเซสเซอรแตละรุน หรือ แตละตระกูล ก็ มักมีภาษาระดับต่ําที่แตกตางกัน และโดยปกติแลว หนึ่งคําสั่งในภาษาระดับต่ํา จะ หมายถึงการสั่งงานคอมพิวเตอรใหทํางานหนึ่งอยาง (1 instruction = 1 operation) ภาษาระดับต่ํา มี 2 ภาษา คือ
  • 7. 2.1 ภาษาเครื่อง เปนภาษาเดียวที่ไมโครโพรเซสเซอรสามารถเขาใจ คําสั่งเปนตัวเลข ลวน ๆ การอานและเขียนอาจตองใชเครื่องมือพิเศษ จึงไมคอยมีการใชภาษาเครื่องโดยตรง
  • 8. 2.2 ภาษาแอสเซมบลี เปนการปรับภาษาเครื่องใหสามารถเขียนไดสะดวกขึ้นโดยการพิมพ คําสั่งที่เปน ตัวอักษรแทนตัวเลข เวลาเขียนเสร็จ จะตองใชตัวแปลโปรแกรมจึงจะใชงานได และ ถึงแมวาไมใชภาษาเครื่องโดยตรง ผูเขียนโปรแกรมยังจําเปนตองเขาใจโครงสรางของไมโคร โพรเซสเซอรที่กําลัง เขียนเปนอยางดี ( ภาษาแอสเซมบลี (Assembly Language) หมายถึง ภาษาที่ ใชในการเขียนโปรแกรมภาษาหนึ่งซึ่งจะทํางานโดยขึ้นกับรุนของไมโครโพรเซสเซอร หรือ "หนวยประมวลผล" (CPU) ของเครื่องคอมพิวเตอร การใชภาษาแอสเซมบลีจําเปนตองผานการ แปลภาษาดวยคอมไพเลอรเฉพาะเรียกวา แอสเซมเบลอร (assembler) ใหอยูในรูปของรหัสคําสั่ง กอน โดยปกติ ภาษานี้คอนขางมีความยุงยากในการใชงาน และการเขียนโปรแกรมมีจํานวน บรรทัดมากมากกวา เมื่อเปรียบเทียบกับการใชภาษาระดับสูง เชน ภาษา C หรือภาษา BASIC แต จะใหผลลัพธการทํางานของโปรแกรมเร็วกวา และขนาดของตัวโปรแกรมมีขนาดเนื้อที่นอยกวา โปรแกรมที่สรางจากภาษาอื่นมาก จึงนิยมใชภาษานี้เมื่อตองการประหยัดเวลาทํางานของเครื่อง คอมพิวเตอร และเพิ่มประสิทธิภาพของโปรแกรม )
  • 9. ภาษาระดับสูง (High Level Language) เปนภาษาที่ใชงายขึ้นกวาภาษาสัญลักษณ โดยผูคิดคนภาษาไดออกแบบ คําสั่ง ไวยากรณ และกฎเกณฑตางๆ ออกมาใหรัดกุม และ จําไดงาย ภาษาระดับสูงนี้ยังอาจจะแบงออกไดเปนหลายประเภท เชน ประเภทที่เหมาะ กับงานวิทยาศาสตรและวิศวกรรมศาสตรไดแก ภาษา Fortran ภาษา BASIC ภาษา PASCALภาษา C ประเภทที่เหมาะกับงานธุรกิจไดแก ภาษา COBOL ภาษา RPG ประเภทที่เหมาะกับงานควบคุมเครื่องคอมพิวเตอรเอง ไดแก ภาษา C โปรแกรมที่จัดทํา ขึ้นโดย ใชภาษาระดับนี้ก็เชนเดียวกับโปรแกรมภาษาสัญลักษณคือ จะตองใชตัวแปล ภาษาแปลใหเปนโปรแกรมภาษาเครื่องกอน คอมพิวเตอรจึงจะเขาใจและทํางานใหได ไดแก ภาษาดังตอไปนี้ 3. ภาษาระดับสูง
  • 10. ภาษาซี (C programming language) เปนภาษาโปรแกรมเชิงโครงสรางระดับสูง สําหรับใชในระบบปฏิบัติการยูนิกซ ตอมาภายหลังไดถูกนําไปใชกับระบบปฏิบัติการ อื่น ๆ และกลายเปนภาษาโปรแกรมหนึ่งที่ใชกันแพรหลายมากที่สุด ภาษาซีมีจุดเดนที่ ประสิทธิภาพในการทํางาน โปรแกรมคอมพิวเตอรที่เขียนดวยภาษาซีจึงทํางานได รวดเร็ว ภาษาซีเปนภาษาโปรแกรมที่นิยมใชกันมากสําหรับพัฒนาระบบปฏิบัติการ, ซอฟตแวรระบบ , ควบคุมไมโครคอนโทรลเลอร และเปนภาษาที่ใชกันทั่วไปใน หลักสูตรวิทยาการคอมพิวเตอร ภาษาซี
  • 11. #include <stdio.h> int main(void) { printf("hello, worldn"); return 0; } ตัวอยางโปรแกรมที่เขียนดวยภาษาซี
  • 12. ภาษาซีพลัสพลัส (C++ programming language) เปนภาษาโปรแกรม คอมพิวเตอรอเนกประสงค มีโครงสรางภาษาที่มีการจัดชนิดขอมูลแบบสแตติก (statically typed) และสนับสนุนรูปแบบการเขียนโปรแกรมที่หลากหลาย (multi- paradigm language) ภาษาซีพลัสพลัส
  • 13. #include <iostream> int main() { std::cout << "hello, worldn"; } ตัวอยางโปรแกรมที่เขียนดวยภาษา C++
  • 14. ภาษา ซีชารป (C# Programming Language) เปนภาษาโปรแกรม เชิงวัตถุทํางานบนดอตเน็ตเฟรมเวิรก พัฒนาโดยบริษัทไมโครซอฟทและ มีAnders Hejlsberg โดยมีรากฐานมาจากภาษาซีพลัสพลัสและภาษา อื่นๆ ภาษาซีชารป
  • 15. public class ExampleClass { public static void Main() { System.Console.WriteLine("Hello, world!"); } } ตัวอยางโปรแกรมที่เขียนดวยภาษา C#
  • 16. ภาษา ปาสกาล (Pascal programming language) เปนภาษาโปรแกรมที่ใชกัน อยางกวางขวาง โดยเฉพาะในวงการศึกษา คิดคนขึ้นโดย นิเคลาส แวรท (Niklaus Wirth) นักวิทยาศาสตรคอมพิวเตอรชาวสวิตเซอรแลนด ในป ค.ศ. 1970 เพื่อชวยใน การเรียนการสอนการเขียนโปรแกรมโครงสราง (structured programming). ภาษาปาส กาลนั้นพัฒนาขึ้นมาจาก ภาษาอัลกอล (Algol) ซึ่งมีโครงสรางคลายกับภาษาปาสกาล แตสามารถรองรับการเขียนโปรแกรมเชิงวัตถุ (object-oriented programming) ได ภาษาปาสกาล
  • 17. โปรแกรมภาษาปาสกาลทุกอัน จะเริ่มตนดวยคียเวิรด Program และสวน ของโคดจะอยูระหวางคียเวิรด Begin และ End ภาษาปาสกาลนั้นไมสนใจความ แตกตางระหวางตัวพิพมใหญและตัวพิพมเล็ก ("end" มีผลเทากับ "End") เซมิโค ลอน (;) ใชเมื่อจบคําสั่ง และ จุลภาค (.) ใชเมื่อจบโปรแกรม program HelloWorld(input, output); begin WriteLn('Hello, World!'); end. โครงสรางอยางงาย
  • 18. ภาษา เบสิก (BASIC programming language) เปนภาษาโปรแกรมที่ออกแบบมา ใหใชงานไดงาย และยังไดรับความนิยมมาจนถึงทุกวันนี้ ชื่อภาษาเบสิก หรือ BASIC ยอ มาจาก Beginner's All-purpose Symbolic Instruction Code ตองเขียนดวยตัวพิมพใหญ เสมอ บริษัท ไมโครซอฟทไดนําภาษาเบสิกมาปรับปรุงใหทันสมัย และพัฒนาเครื่องมือ พัฒนาโปรแกรม Visual Basic ทําใหเบสิกไดรับความนิยมในการพัฒนาโปรแกรมยุค ใหม รุนลาสุดของวิชวลเบสิกเรียกวา VB.NET ภาษาเบสิก
  • 19. ภาษาฟอรแทรน (FORTRAN) ภาษาฟอรแทรน (FORTRAN - FORmula TRANslation) จัดไดวาเปนภาษาระดับ สูงภาษาแรกของโลก พัฒนาในป ค.ศ. 1954 โดยทีมนักคอมพิวเตอร บริษัท ไอบีเอ็ม (IBM) ตัวอยางโปรแกรมที่เขียนดวยภาษา FORTRAN programme cc integer int int = 12 write(*,*) 'The value of int is', + int end stop
  • 20. ภาษา จาวา (Java programming language) เปนภาษาโปรแกรมเชิง ซึ่งมีจุดประสงคเพื่อใชแทนภาษาซีพลัสพลัส (C++) โดยรูปแบบที่เพิ่มเติมขึ้นคลาย กับภาษาอ็อบเจกตทีฟซี (Objective-C) แตเดิมภาษานี้เรียกวา ภาษาโอก (Oak) แตวามี ปญหาทางลิขสิทธิ์ จึงเปลี่ยนไปใชชื่อ "จาวา" แทน แมวาจะมีชื่อคลายกัน แตภาษา จาวาไมมีความเกี่ยวของใด ๆ กับภาษาจาวาสคริปต (JavaScript) ภาษาจาวา
  • 21. ภาษาโปรล็อก (Prolog) เปนภาษาสําหรับการเขียนโปรแกรมเชิง ตรรกะ และถูกนําไปใชในโปรแกรมสําหรับปญญาประดิษฐ และภาษาศาสตร เชิงคํานวณ (computational linguistics) โดยเฉพาะการประมวลผล ภาษาธรรมชาติ ไวยากรณและความหมายของภาษานั้นเรียบงายและชัดเจน (เปาหมายแรกของภาษาคือเปนเครื่องมือสําหรับนักภาษาศาสตรที่ไมรู คอมพิวเตอร) ภาษาโปรล็อก (Prolog)
  • 22. การเขียนภาษาโปรแกรม คือ การใสชุดคําสั่งที่จะใหคอมพิวเตอรทํางาน ตาม เปาหมายที่เราตองการ ซึ่งชุดคําสั่งที่ใสลงไปนั้น เรา(โปรแกรมเมอร) จะตองเปนผู พิมพคําสั่งลงไปเอง และตองเปนคําสั่งที่ถูกตองตามหลักไวยากรณ (Syntax)และ โครงสรางของภาษาที่เราเลือกใช (ดังนั้นเราจะตองเรียนรูเกี่ยวกับการใชรูปแบบคําสั่ง ของภาษานั้น) หลังจากพิมพคําสั่งลงไปทั้งหมดเราก็จะไดมาซึ่งซอรสโคดของภาษา โปรแกรมโดยปกติแลวจะอยูในรูปแบบขอความตัวอังกฤษธรรมดา ซึ่งไมสามารถ นําไปใชงานได จะตองผานกระบวนการที่ทําใหซอรสโคดสามารถใชงานได เราเรียก ขั้นตอนนี้วา การคอมไพล หรือ อินเทอรพรีท หรือ แอสเซม แลวแตภาษาโปรแกรมที่ เราใช ดังนี้ การเขียนภาษาโปรแกรม (Programing)
  • 23. 1. ถาเปน ภาษาปาสคาล,ภาษาซี,ภาษาเบสิก เรียกตัวแปลซอรสโคดชนิด นี้วา คอมไพเลอร คอมไพล เปนการแปลซอรสโคดนั้นใหเปนภาษาเครื่อง (machine language) หนึ่งครั้ง เพื่อใหไดแฟมขอมูลที่สามารถทํางานได 2. ถาใช ภาษา Logo, HTML เรียกตัวแปลซอรสโคดชนิดนี้วา อินเทอร พรีทเตอร อินเทอรพรีท เปนการแปลซอรสโคดใหเปนภาษาเครื่อง(machine language) ทุกครั้งที่ตองการใชโปรแกรม 3. ถาใชภาษาแอสเซ็มบลี เทานั้นเรียกตัวแปลซอรสโคดชนิดนี้วา แอส เซ็มเบลอร แอสเซ็ม เปนการแปลซอรสโคดนั้นใหเปนภาษาเครื่อง(machine language) หนึ่งครั้ง เพื่อใหไดแฟมขอมูลที่สามารถทํางานได
  • 24. มีกระบวนการทํางานดังนี้ •วิเคราะหปญหา (Analysis) •วางแผนและออกแบบการทํางานของโปรแกรม (Planing & Design) •เขียนโปรแกรม (Coding) •ทดสอบโปรแกรม (Testing) •จัดทําเอกสารและการบํารุงรักษา (Documentation) ขั้นตอนการพัฒนาโปรแกรม
  • 25. ขั้นตอนนี้ถือวาเปนขั้นตอนที่สําคัญที่สุด นักวิเคราะหระบบ / ผูเขียนโปรแกรม ตองวิเคราะหปญหาใหออกวาจะเขียนโปรแกรมเพื่อแกปญหาอะไร ตองใชขอมูล อะไรบางเพื่อใหไดผลลัพธตามตองการ มีขั้นตอนการประมวลผลอยางไร เปนตน ซึ่ง ในการวิเคราะหปญหานั้นมีประเด็นที่ตองพิจารณาออกมาเปนขอๆ ดังนี้ 1.วิเคราะหปญหา (Analysis)
  • 26. 1.1 ตองการอะไร จะตองอธิบายวางานที่ตองการใหคอมพิวเตอรทํานั้น ตองการใหทําอะไร โดยอาจ เปนการเขียนออกมาเปนขอๆ ก็ได 1.2 ตองการเอาตพุตอยางไร อธิบายลักษณะของผลลัพธอยางละเอียดวาตองการเปนอยางไร เชน ตองการให แสดงผลออกทางจอภาพ หรือ เครื่องพิมพ หรือลําโพง ผลลัพธที่ไดตองการทศนิยมกี่ ตําแหนง การแสดงผลหนาแรกเปนอยางไร หนาตอไปเปนอยางไร มีเลขหนาหรือไม มี สวนหัวสวนทายของเอกสารหรือไมเปนตน 1.3 ขอมูลเขาเปนอยางไร สวนนี้มักจะออกแบบหลังจากไดออกแบบสวนแสดงผลไปแลว โดยเมื่อทราบ รูปแบบของผลลัพธแลว จะตองมาดูวาถาหากตองการขอมูลแบบที่ตองการ แลวขอมูล ทางอิตพุตควรเปนอยางไร
  • 27. 1.4 ตัวแปรที่ใช เพื่อบอกวาจะใชตัวแปรอะไรแทนขอมูลนําเขา หรือแทนคาที่อยูในระหวางการ ประมวลผล ตลอดจนตัวแปรที่ใชแสดงผลลัพธ 1.5 วิธีการประมวลผลเปนอยางไร อธิบายถึงลําดับขั้นตอนของการประมวลผล วิธีการแกปญหาเพื่อใหไดผลลัพธ ตามที่ตองการ โดยตองพิจารณาวาขอมูลตางๆที่รับเขาไปนั้นจะตองเก็บในตัวแปรกี่ตัว เปนตัวแปรประเภทใด การประมวลผลมีขั้นตอนกระทํากับตัวแปรนั้นๆอยางไรบาง ถา หากตองการประมวลผลกับขอมูลหลายคาจะรับขอมูลเขาไปที่ละคาแลวประมวลผล หรือ รับขอมูลเขาไปทั้งหมดแลวประมวลผล
  • 28. ตัวอยางที่ 1 จงเขียนแนวทางการแกปญหาดวยคอมพิวเตอร สําหรับให คอมพิวเตอรคํานวณหาผลบวกของเลข 2 จํานวน จากนั้นใหแสดงผลลัพธที่ คํานวณได วิธีทํา ตองการอะไร ตองการหาผลบวกของเลข 2 จํานวน ตองการเอาตพุตอยางไร ตองการเอาตพุตเปนผลลัพธที่ไดจากการบวก เลข 2 จํานวน ขอมูลเขา เลขจํานวนจริง 2 จํานวน เลขจํานวนจริงที่ 1 เก็บในตัวแปรชื่อ num1 , เลขจํานวนจริงที่ 2 เก็บในตัวแปรชื่อ num2
  • 29. วิธีการประมวลผล กําหนดวิธีการคํานวณ ผลลัพธ = เลขจํานวนจริงที่ 1 + เลขจํานวนจริงที่ 2 ขั้นตอนการประมวลผล 1. เริ่มตน 2. รับคาตัวเลขจํานวนจริงตัวที่ 1 , รับคาตัวเลขจํานวนจริงตัวที่ 2 3. คํานวณ ผลลัพธ = เลขจํานวนจริงที่ 1 + เลขจํานวนจริงที่ 2 4. แสดงผลลัพธ 5. จบการทํางาน
  • 30. แบบฝกหัด 1. จงวิเคราะหวิธีการรับประทานยา ที่แบงตามอายุผูทานดังนี้ อายุมากกวา 10 ป ครั้งละ 2 ชอนชา อายุมากกวา 3 – 10 ป ครั้งละ 1 ชอนชา อายุมากกวา 1 – 3 ป ครั้งละ ½ ชอนชา อายุต่ํากวา 1 ป หามรับประทาน ....................................................................................................... . 2. จงวิเคราะหการทํางานของลิฟต ที่มีการทํางาน 6 ชั้น
  • 31. จงเขียนแนวทางการแกปญหาดวยคอมพิวเตอร 1.โปรแกรมตัดเกรดโดยใสคะแนนทางแปนพิมพ แลวเปรียบเทียบคะแนนกับ เกณฑการตัดเกรด ดังนี้ คะแนน 80 ขึ้นไป พิมพ A คะแนน 70 ขึ้นไป พิมพ B คะแนน 60 ขึ้นไป พิมพ C คะแนน 50 ขึ้นไป พิมพ D ต่ํากวานั้น พิมพ F 2. โปรแกรม คูณ 2 3. แสดงผลบวกของตัวเลขจํานวน 4 จํานวน
  • 32. การวางแผน คือการนําปญหาที่วิเคราะหไดจากขั้นตอนที่ 1 มาวางแผนการ ทํางานอยางเปน ขั้นตอนวาจะตองเขียนโปรแกรมอยางไร จะใหโปรแกรมทําอะไรกอนหลัง การ วางแผนอยางเปน ขั้นตอนนี้ เรียกวา อัลกอริทึม (Algorithm) ซึ่งอัลกอริทึมสามารถทําได 2 รูปแบบคือ 1.อัลกอริทึมแบบ ซูโดโคด (Pseudocode) คือ การเขียนอัลกอริทึมโดยใช ประโยคภาษาอังกฤษที่สื่อความหมายงายๆวาตองการใหโปรแกรมทําอะไรอยาง เปนลําดับขั้นตอน สามารถอานแลวเขาใจไดทันที่
  • 33. 2. อัลกอริทึมแบบ โฟลวชารต (Flowchart) คือ การเขียนอัลกอริทึมโดยใช สัญลักษณรูปภาพเปนตัวสื่อความหมายวาตองการใหโปรแกรมทําอะไรอยางเปน ลําดับขั้นตอน ตัวอยาง การทําอัลกอริทึมแบบซูโดโคด (Pseudocode) start Read x Read y Compute sum = x+y Print sum stop
  • 35. 3. การเขียนโปรแกรม (coding) เปนขั้นตอนของการพิมพชุดคําสั่งของภาษาโปรแกรมตามลําดับการทํางานของ โปรแกรมจากอัลกอริทึม ในขั้นตอนที่ 2 โดยชุดคําสั่งที่พิมพจะตองถูกหลังไวยกรณ และโครงสรางของภาษาโปรแกรม หลังจากนั้นนําซอรสโคดไปผานกระบวนการแปล คําสั่งไปเปนภาษาที่เครื่องเขาใจเราเรียกกระบวนการนี้วา คอมไพล หรือ อินเทอร พรีท หรือ แอสเซ็ม แลวแตภาษาโปรแกรมที่เราใชในการเขียน
  • 36. 4.ทดสอบโปรแกรม (Testing)  เปนขั้นตอนการทดสอบการทํางานของโปรแกรมวาถูกตองตามเปาหมายที่ ตองการหรือไม หากตองมีการปอนคาตางๆที่เกี่ยวกับการทํางานของโปรแกรมก็ตอง ปอนคาเขาไปในโปรแกรมเพื่อใหการทํางานของโปรแกรมสมบูรณหลังจากนั้น ตรวจสอบผลลัพธที่ไดวาถูกตองหรือไม โดยทดสอบหลายๆครั้งหลายๆกรณี แตหาก วาผลลัพธที่ไดไมถูกตอง ผูเขียนโปรแกรมก็ตองกลับไปตรวจสอบโปรแกรมใหมอีก ครั้งวามีการเขียนโปรแกรมผิดหรือไม
  • 37. 5.จัดทําคูมือและบํารุงรักษาโปรแกรม (Documentation)  จุดประสงคในการทําคูมือ คือ ชวยใหผูอื่นที่เกี่ยวของสามารถเขามาศึกษาโปรแกรม ไดงายขึ้น ทั้งในดานการใชงานของโปรแกรม หรือ การศึกษาซอรสโคดของโปรแกรม เพื่อนําไปพัฒนาโปรแกรมตอยอดขึ้นไปอีก หรือศึกษาเกี่ยวกับการทํางานของ โปรแกรม เปนตน