Skip to content

การเขียนโปรแกรมเบื้องต้น

กรกฎาคม 13, 2010
การเขียนโปรแกรมเบื้องต้น
เรื่อง ภาษาเบสิกและการเขียนโปรแกรม
สาระสำคัญ
ประวัติความเป็นมาของภาษาเบสิก สัญลักษณ์ที่ใช้ในภาษาเบสิก ขั้นตอนการทำงานของโอเปอเรชั่นในการคำนวณ การเปรียบเทียบและตรรกศาสตร์
จุดประสงค์ปลายทาง
เข้าใจความเป็นมาของภาษาเบสิกและหลักการเขียนโปรแกรม

จุดประสงค์นำทาง
1. อธิบายหลักการเรื่องค่าคงที่และตัวแปรได้
2. อธิบายเรื่องเกี่ยวกับโอเปอเรชั่นต่าง ๆ ได้
3. อธิบายลำดับขั้นตอนการทำงานของโอเปอเรชั่นต่าง ๆ ได้

เนื้อหา
ภาษาเบสิก (BASIC LANGUAGE) ย่อมาจากคำว่า BASIC ไม่ได้แปลว่าพื้นฐาน หรือเบื้องต้น ตามพจนานุกรมภาษาอังกฤษแต่คำว่า BASIC เป็นคำย่อ ๆ ซึ่งมาจากคำเต็มๆ โดยนำตัวอักษรตัวแรกมาเขียนเรียงกันซึ่งคำเต็ม ๆ ก็คือ
Beginner’s All-purpose Symbolic Instruction Code
โปรแกรมภาษาเบสิกเป็นโปรแกรมภาษาระดับสูง (High Level language) มีการพัฒนาขึ้นในปี ค.ศ. 1960 โดยศาสตราจารย์จอนห์ เคเมนี (John Kemeny) และศาสตราจารย์โทมัส เคอตซ์ (Thomas Kurtz) แห่งวิทยาลัยดาร์ตเม้าท์ สหรัฐอเมริกา
การจะสั่งให้เครื่องคอมพิวเตอร์ทำงานได้ตามที่เราต้องการ โดยการใช้โปรแกรมภาษาระดับสูงอย่างภาษาเบสิกในการสั่งเราเรียกว่า การเขียนโปรแกรม ในความหมายของการเขียนโปรแกรมคอมพิวเตอร์ หมายถึง การเขียนคำสั่งตั้งแต่ 1 คำสั่งขึ้นไป เพื่อให้คอมพิวเตอร์ทำงานอย่างที่ต้องการ เนื่องจากคอมพิวเตอร์สามารถรับรู้คำสั่งได้ค่อนข้างจำกัด ดังนั้นการเขียนคำสั่งแต่ละคำสั่งต้องอยู่ในรูปแบบ และเป็นไปตามหลักไวยากรณ์

องค์ประกอบคอมพิวเตอร์

  1. ฮาร์ดแวร์ หมายถึง อุปกรณ์ต่างๆ ที่ประกอบขึ้นเป็นเครื่องคอมพิวเตอร์
  2. ซอฟต์แวร์ หมายถึง โปรแกรมหรือชุดคำสั่งที่ถูกเขียนขึ้นเพื่อสั่งให้เครื่องคอมพิวเตอร์ทำงาน (เขียนขึ้นด้วยโปรแกรมภาษาคอมพิวเตอร์)
  3. พีเพิ้ลแวร์ หมายถึง บุคลากรในงานด้านคอมพิวเตอร์

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

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

ภาษาคอมพิวเตอร์แบ่งเป็น 3 แบบ

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

ตัวแปลภาษา

ตัวแปลภาษา  มี 2 แบบ คือ

  1. คอมไพเลอร์  หมายถึง ตัวแปรภาษาระดับสูง ที่ทำการแปลโปรแกรมทั้งหมดก่อนจึงจะทำงานตามคำสั่ง
  2. อินเทอร์พรีเตอร์ หมายถึง ตัวแปรภาษาระดับสูงที่ทำการแปลครั้งละหนึ่งคำสั่งและทำงานทีละคำสั่งให้เสร็จก่อนที่จะแปลคำสั่งต่อไป

ในที่นี้เราจะเขียนโปรแกรมโดยใช้โปรแกรม ภาษาเบสิก(BASIC) กัน

ประวัติภาษาเบสิก

ภาษาเบสิกได้พัฒนาขึ้นมาโดยศาสตราจารย์จอห์น เคเมนี (John Kemeny) และศาสตราจารย์โทมัส  ครูสซ์ (Thomas Kurtz) แห่งมหาวิทยาลัยดารห์เมาท์ (Dartmounth College) ในกลางปี ค.ศ. 1964 ภาษาเบสิกใช้ได้กับคอมพิวเตอร์ขนาดเล็กถึงขนาดใหญ่ มีการพัฒนาจนทำให้มีภาษาเบสิกต่าง ๆ กัน เช่น TurboBasic PowerBasic QBasic และ VisualBasic เป็นต้น

ภาษาเบสิก ย่อมาจาก Beginner’s All Purpose Symbolic Instruction Code

โดยนำอักษรตัวแรกมาเรียงต่อกัน

ประโยชน์ภาษาเบสิก

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

*** จากประโยชน์ภาษาเบสิก  เราจึงเลือกใช้ภาษาเบิสิก ในการเขียนโปรแกรมครั้งนี้
ค่าคงที่ (Constants)
ค่าคงที่หมายถึง ค่าของข้อมูลที่มีค่าแน่นอนไม่เปลี่ยนแปลง ค่าคงที่สามารถแบ่งออกได้เป็น 3 ประเภท คือ
1. ค่าคงที่ที่เป็นจำนวน (Numeric Constants) หมายถึง ค่าคงที่ที่เป็นจำนวนและนำไปใช้ในการคำนวณ จะเป็นจำนวนเต็ม หรือทศนิยมก็ได้
2. ค่าคงที่ทางตรรกศาสตร์ (Logical Constants) หมายถึง ค่าคงที่ที่แสดงถึงความเป็นจริง (True) หรือเท็จ (False) ในภาษาเบสิกสำหรับคอมพิวเตอร์บางระบบกำหนดให้ 1 แทนจริงและ 0 แทนเท็จ
3. ค่าคงที่อักขระ (String Constants) หมายถึง ตังอักษรตั้งแต่ 1 ตัวขึ้นไป หรือเป็นตัวเลขปนก็ได้ ตัวอักขระจะเป็นข้อความที่มีความยาวได้ระหว่าง 1 ถึง 255 ตัวอักษร การเขียนค่าคงที่อักขระจะต้องอยู่ภายในเครื่องหมายคำพูดเสมอ

ตัวแปร (Variables)
ตัวแปร หมายถึง ชื่อที่ผู้เขียนโปรแกรมกำหนดขึ้นเพื่อใช้เก็บหรือแทนข้อมูล ตัวแปรจึงเป็นเสมือนชื่อกล่องที่เก็บข้อมูล การตั้งชื่อตัวแปรจะเป็นตัวอักษรทั้งหมดหรือมีตัวเลขปนก็ได้ แต่ละตัวแปรจะต้องขึ้นต้นด้วยตัวอักษรเสมอ เช่น NAME SCORE X3
การตั้งชื่อตัวแปรควรตั้งชื่อให้สื่อความหมายเพื่อผู้ใช้จะได้เข้าใจง่าย ตัวแปรแบ่งเป็น 2 ประเภทคือ
1. ตัวแปรจำนวน (Numeric Variables) คือบอกให้รู้ว่าข้อมูลที่เก็บอยู่เป็นจำนวน
2. ตัวแปรอักขระ (String Variables) คือ ตัวแปรที่จะบอกให้รู้ว่าเก็บข้อมูลอยู่ในรูปตัวอักษรหรือข้อความต่าง ๆ เช่น ชื่อบ้านเลขที่ จะต้องปิดท้ายด้วยเครื่องหมาย $ เช่น NAME$ ADDRESS$

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

1. สัญลักษณ์ในการคำนวณ ซึ่งจะใช้ในการคำนวณทางคณิตศาสตร์ ได้แก่

สัญลักษณ์ ความหมาย ตัวอย่าง
+ บวก A+B
- ลบ 145-45
* คูณ 6*9
/ หาร 120/12
^ ยกกำลัง Y^3

สำหรับเครื่องหมายบวก เราสามารถใช้เครื่องหมายบวกในการเชื่อมค่าคงที่ ที่เป็นอักขระหรือ ตัวแปรอักขระก็ได้ ซึ่งจะหมายถึงการให้นำตัวอักขระหรือค่าที่เก็บในตัวแปรอักขระมาต่อกัน เช่น “GOOD”+”MORNING”,A$+B$

2. สัญลักษณ์แสดงการเปรียบเทียบ ใช้เปรียบเทียบจำนวนและเปรียบเทียบอักขระ

สัญลักษณ์ ความหมาย ตัวอย่าง
= เท่ากับ X=Y
< น้อยกว่า “ANT”>”BOY”
> มากกว่า SCORE>80
<= น้อยกว่าหรือเื่ท่ากับ IQ<=40
>= มากกว่าหรือเท่ากับ PERCENT>=90
<>หรือ >< ไม่เท่ากับ X<>0

3. สัญลักษณ์ตรรกศาสตร์

สัญลักษณ์ ความหมาย ตัวอย่าง
NOT ไม่ใช่ NOT A(ถ้า A เป็นจริง (-1) ก็จะกลับเป็น 0 คือ เท็จ)
AND และ X AND Y (จะเป็นจริงเมื่อ XและY เป็นจริงทั้งคู่)
OR หรือ A OR B(OR จะเป็นจริง ถ้าจริงเพียงกรณีเดียว)
ขั้นตอนการทำงานของโอเปอเรชั่น
เนื่องจากสัญลักษณ์ต่าง ๆ ที่อยู่ในนิพจน์มีลำดับขั้นในการทำงานที่แตกต่างกัน ดังนั้น เมื่อเขียนนิพจน์จะต้องทราบว่า สัญลักษณ์ใดทำงานก่อนหรือหลัง ผลการคำนวณจึงจะออกมาถูกต้อง
สัญลักษณ์คำนวณมีลำดับในการทำงาน ดังนี้
ลำดับที่ 1 วงเล็บ ( )
ลำดับที่ 2 ยกกำลัง ^
ลำดับที่ 3 คูณและหาร *,/
ลำดับที่ 4 บวกและลบ +,-

ตัวอย่างที่ 1.1    5 + 2 – 3 – 2  มีลำดับการทำงานดังนี้
ขั้นที่ 1    7 – 3 – 2
ขั้นที่ 2    4 – 2
ขั้นที่ 3    2

ตัวอย่างที่ 1.2    5 / 2 – 3.5 * 2 – 3 มีลำดับการทำงานดังนี้
ขั้นที่ 1   2.5 – 3.5 * 2 – 3
ขั้นที่ 2   2.5 – 7 – 3
ขั้นที่ 3   -4.5 – 3
ขั้นที่ 4   -7.5

ตัวอย่างที่ 1.3   จงหาผลลัพธ์ของ 16 / 2 * 4 – 3 ^ 2 + 10
เครื่องจะคำนวณตามลำดับดังนี้
1. 16 / 2 * 4 – 3 ^ 2 + 10   จะคำนวณ 3^2 =9
2. 16 / 2 * 4 – 9 + 10         จะคำนวณ 16/2 =8
3. 8 * 4 – 9 + 10                 จะคำนวณ 8*4 =32
4. 32 – 9 + 10                    จะคำนวณ 32-9 =23
5. 23 + 10                          จะคำนวณ 23+10 =33

แบบฝึกหัดที่ 1
เรื่อง ภาษาเบสิกและการเขียนโปรแกรม

1. ภาษาเบสิกย่อมาจากคำว่าอะไร
2. ผู้ที่พัฒนาโปรแกรมแกรมภาษาเบสิกคือใคร
3. จงอธิบายความแตกต่างระหว่าค่าคงที่กับตัวแปร
4. จงลำดับการทำงานและหาผลลัพธ์ของนิพจน์ต่อไปนี้
4.1 2 ^ 3 ^ 2
4.2 8 * 1 / 3
4.3 16 ^ (1 / 2)
4.4 2 + 5 > 5 / 2 – 2
4.5 7 <= 3 + 2 AND 8 / 4 * 2 > 3 ^ 2
5. NOT AND OR จัดเป็น Operator ประเภทใด


About these ads
No comments yet

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

ติดตาม

Get every new post delivered to your Inbox.

%d bloggers like this: