Skip to content

ใบงาน

สิงหาคม 9, 2010

ตัวอย่างโปรแกรม

สิงหาคม 9, 2010

ตัวแปรข้อมูล(data type)

กรกฎาคม 19, 2010

การใช้งานคำสั่ง printf(),scanf()

กรกฎาคม 18, 2010

โครงสร้างโปรแกรมภาษาซี

กรกฎาคม 15, 2010

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

กรกฎาคม 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 ประเภทใด


เอกสารประกอบการเรียน

กรกฎาคม 11, 2010

แบบฝึกการเขียนผังงานแบบ 2 ทางเลือก และมากว่า 2 ทางเลือก (060753)

การวิเคราะห์ปัญหา(080653)

การเขียนผังงานแบบทำซ้ำ (080753)

การเขียนผังงานแบบทางเลือก (050753)

การเขียนผังงานแบบทางเลือก (010753)

การเขียนผังงาน (290653)

การเขียนผังงาน (280653)