The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

บทที่2 เรื่อง ภาษาคอมพิวเตอร์ที่ใช้ในการเขียนโปรแกรมบนอุปกรณ์เคลื่อนที่

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by Somporn Mokarat, 2022-08-13 11:00:15

บทที่ 2 เรื่อง ภาษาคอมพิวเตอร์ที่ใช้ในการเขียนโปรแกรมบนอุปกรณ์เคลื่อนที่

บทที่2 เรื่อง ภาษาคอมพิวเตอร์ที่ใช้ในการเขียนโปรแกรมบนอุปกรณ์เคลื่อนที่

Keywords: บทที่ 2,อุปกรณ์เคลื่อนที่

รายวชิ า การเขยี นโปรแกรมบนอปุ กรณเ์ คล่ือนที่ รหัส 20901-2005

หนว่ ยท่ี 2
เรอื่ ง ภาษาคอมพวิ เตอรท์ ใ่ี ชใ้ นการเขยี นโปรแกรมบนอุปกรณ์เคล่ือนที่

นางสมพร โมกษะรัตน์ ครชู ำนาญการ วทิ ยาลัยเทคนิคพงั งา

รายวชิ า การเขยี นโปรแกรมบนอุปกรณ์เคลอ่ื นที่ รหัส 20901-2005
หน่วยท่ี 2 เร่อื ง ภาษาคอมพวิ เตอรท์ ใ่ี ช้ในการเขยี นโปรแกรมบนอุปกรณเ์ คลอ่ื นท่ี

1. แนะนำภาษา C

ในพนื้ ฐาน ไปจนถึงข้ันสงู กบั การเขียนโปรแกรมเชิงวัตถุ ต้องรู้จกั กับภาษา C# ก่อน

ภาษา C# คืออะไร

C# เปน็ ภาษาเขียนโปรแกรมแบบ multi-paradigm ซึ่งมรี ปู แบบภาษาทีต่ ายตัว และเป็นรูปแบบ
บงั คบั ในการเขียน มีฟงั ก์ชัน และยงั เป็นภาษาการเขียนโปรแกรมที่มคี ณุ สมบตั ิเป็นแบบออบเจ็คด้วย ซึ่ง
มันถกู พฒั นาโดยบริษทั Microsoft ภายใต้ .NET framework โดยในการพัฒนาภาษา C# นี้ มีความตั้งใจ
ให้มันเขียนงา่ ย ทันสมัย เป็นโปรแกรมเพือ่ วัตถปุ ระสงคท์ ัว่ ไปและเป็นแบบออบเจค็ C# เป็นภาษาเขียน
โปรแกรมเพือ่ วัตถุประสงค์ทัว่ ไป การพัฒนานั้นนำทีมโดย Anders Hejlsberg และเวอรช์ ันลา่ สุดคือ C#
6.0 ซึ่งถกู เผยแพรใ่ นปี 2015

ประวตั ิของภาษา C#

ในระหว่างการพัฒนาของ .NET Framework คลาสและไลบรารี่ต่างๆ ถูกเขียนขนึ้ โดยระบบการ
จัดการโค้ดสำหรับการคอมไพล์ที่เรียกว่า Simple Managed C (SMC) ในเดือนมกราคม 1999 Anders
Hejlsberg ได้ก่อตั้งทีมเพื่อสร้างภาษาใหม่ในเวลานั้น ทีเรียกว่า Cool ซึ่งเป็นคำย่อของ "C-like Object
Oriented Language" ในเวลาที่โครงการ .NET ของ Microsoft ถูกเผยแพร่ในเดือนกรกฏาคม 2000 ใน
การประชมุ ของกล่มุ นกั พัฒนามืออาชีพ ภาษาได้ถกู เปล่ยี นชือ่ เปน็ C# และคลาสไลบรารีแ่ ละ ASP.NET
ได้ถูกเชื่อมเข้ากบั C#

ชื่อของภาษา "C Sharp" นั้นมีแรงบรรดารใจมาจากเครื่องหมายของเพลง โดย Sharp (#) นั้น
เป็นสิ่งที่บ่งบอกว่าโน้ตของดนตรีที่ถูกเขียนขึ้นนั้นเป็นสิ่งที่ทำให้เสียงของดนตรีสูงขึ้น ซึ่งนี่จะคล้ายกบั
ภาษา C++ โดย "++" ซึง่ หมายถึงค่าของตวั แปรจะเพม่ิ ขนึ้ หนึ่ง นอกจากนมี้ ันยงั เปน็ ภาษาทีห่ มายถึงการ
เพิม่ ความสามารถของภาษา C++

2|Page

หนว่ ยที่ 2 เร่อื ง ภาษาคอมพวิ เตอรท์ ใ่ี ชใ้ นการเขยี นโปรแกรมบนอุปกรณเ์ คลอ่ื นที่

.NET framework คืออะไร

นางสมพร โมกษะ.NรตัETน์ framework เป็นซอฟแวร์ไลบรารี่ที่พครัฒูชำนนาาญโดกยาบร ริษัท Microsoft เพื่อรันแอพวทิ พยลาลิเคัยเชทันคนิคพงั งา
ประเภทต่างๆ ภายใต้ระบบปฏิบัติการ Windows โปรแกรมที่เขียนขึ้นสำหรับ .NET framework นั้น
จะทำงานโดย Common Language Runtime (CLR) ซึ่งเป็นแอพพลิเคชันที่ให้บริการเซอร์วิสต์ในด้าน
ความปลอดภัย การจัดการหนว่ ยความจำ และการควบคุมข้อผิดพลาดที่เกิดขนึ้ ขณะโปรแกรมรัน

C# คอมไพล์เลอร์

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

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

เครื่องมอื ในการพัฒนาภาษา C#

มีเครื่องมือพัฒนาเป็นจำนวนมากที่สามารถใช้ได้ในการเขียนโปรแกรมด้วยภาษา C# ใน
บทเรียนนี้ จะแนะนำให้ใช้ Visual Studio ซึ่งพัฒนาโดย Microsoft ซึ่งมันอำนวยความสะดวกโดยมี
ฟงั ก์ชันมากมายที่จะชว่ ยเราให้เขียนโปรแกรมไดง้ า่ ยขนึ้ และยังมีคอมไพล์เลอร์อีกด้วย

2. โครงสรา้ งของโปรแกรม

โครงสร้างพืน้ ฐานของการเขียนโปรแกรมภาษา C# จะสร้างโปรแกรมทีช่ ื่อวา่ Hello World ซึง่ จะ
แสดงคำว่า "Hello Word" ออกทางหน้าจอคอมพิวเตอร์ มันเป็นโปรแกรมแรกที่ทุกคนจะได้เขียนเมื่อ
พวกเริ่มเขียนโปรแกรม

3|Page

หน่วยท่ี 2 เรอ่ื ง ภาษาคอมพิวเตอรท์ ่ีใชใ้ นการเขยี นโปรแกรมบนอุปกรณเ์ คลอื่ นที่

รปู ที่ 2.1 ตัวอย่างโค้ดโปรแกรม Hello World
เราสามารถรันโปรแกรมใน Visual Studio ได้โดยการ Ctrl + F5 สำหรบั โหมด Debug เพราะว่า
เมื่อโปรแกรมจบการทำงาน Console จะปิดลงทันที หรือคุณสามารถใช้คำสั่ง Console.ReadKey() ใน
ตอนท้ายของเมธอด Main() สำหรบั แก้ปญั หาดงั กล่าวได้

รูปที่ 2.2 แสดผลการรนั โปรแกรม Hello World

คำส่ัง using

คำสั่ง using ถูกใช้เพื่อ include ไลบรารี่และฟังก์ชันในภาษา C# ทั้งฟังก์ชันมาตราฐานและ
ฟังก์ชันที่ผู้ใช้สร้างขึ้นเอง จากตัวอย่างโค้ด Using System หมายถึงเราได้ทำการ include คลาสและ
ฟังกช์ นั ท้ังหมดภายใต้ System namespace เพือ่ ทีจ่ ะนำมาใช้ในโปรแกรมของเรา

ฟงั ก์ชนั Main

4|Page

หนว่ ยที่ 2 เร่อื ง ภาษาคอมพวิ เตอร์ทใ่ี ช้ในการเขยี นโปรแกรมบนอปุ กรณเ์ คล่อื นที่

ภาษา C# นั้นต้องการฟังก์ชันที่เรียกว่า Main() เพื่อเริ่มต้นและสิ้นสุดโปรแกรม สามารถเขียน
โค้ดโปรแกรในฟงั ก์ชัน Main และใช้เรยี กฟังก์ชันอื่นๆ และฟังกช์ นั Main นั้นจะมีหลายแบบ ซึ่งสามารถ
สร้างไดโ้ ดยใช้คำสั่ง void, int และอื่นๆ โดยที่คำสั่ง void บง่ บอกวา่ ฟังกช์ นั นไี้ มไ่ ดม้ ีคา่ ส่งกลบั ไม่เช่นนั้น
ต้องใช้คำสงั่ return เพือ่ สง่ ค่ากลับหลงั จากจบฟังกช์ ัน

ตัวอยา่ งของฟังก์ชัน Main แบบอืน่ ๆ และแบบเป็นฟังก์ชนั Main ที่ใช้คำสัง่ int ในการสร้างและ
ฟงั กช์ นั main ในภาษา C# กบั อากิวเมนต์

รปู ที่ 2.3 แบบเป็นฟังก์ชนั Main ที่ใช้คำสั่ง int

รูปที่ 2.4 แบบเปน็ ฟงั ก์ชัน Main

5|Page

หนว่ ยท่ี 2 เร่ือง ภาษาคอมพิวเตอร์ท่ใี ช้ในการเขยี นโปรแกรมบนอปุ กรณเ์ คล่ือนท่ี

ภายในฟังก์ชัน Main คำสั่ง Console.WriteLine("Hello World!") นั้นถูกใช้เพื่อแสดงผลข้อความ
"Hello Word!" ออกทางหน้าจอโดยการใช้ฟังก์ชัน WriteLine จากคลาส Console ซึ่งอยู่ภายใต้ System
namespace

คำส่งั namespace

คำสั่ง namespace นั้นถูกใช้สำหรับการประกาศ namespace สำหรับคลาส ในภาษา C#
namespace สามารถประกอบไปด้วยคลาสเดียวหรือหลายคลาสก็ได้ ในตัวอย่างเราได้สร้าง
namespace Hello สำหรบั โปรแกรมของเรา

การสร้างคลาส

คลาสเป็นเหมือนโค้ดที่สามารถยืดขยายหรือปรับแต่งได้ คลาสเป็นเหมือนโค้ดที่สามารถยืด
ขยายหรือปรับแต่งได้ มันเป็นเท็มเพลทสำหรับเอาไว้สร้างออบเจ็ค หรือกำหนดค่าเริ่มต้น ซึ่งมันจะมี
แอทรบิ ิวสแ์ ละเมทธอดท่เี ป็นสมาชิกของคลาส ยกตวั อยา่ งเชน่ คำส่ัง class Program ให้เพื่อสร้างคลาส
ทีม่ ีชือ่ ว่า Program

Comment

ในภาษา C# สามารถคอมเม้นต์โดยการใช้เครื่องหมาย// ก่อนหน้าบรรทัดของตัวอักษรที่
ต้องการคอมเม้นต์ ผลลัพธ์ของการคอมเมนตก์ ค็ ือโค้ดนั้นจะไม่มีผลกับโปรแกรม // และจะถูกเพิกเฉย
จากคอมไพเลอร์ และการคอมเม้นต์แบบน้เี รยี กวา่ การคอมเม้นต์แบบ 1 บรรทดั มาดตู ัวอยา่ ง

รูปที่ 2.4 ตวั อย่างการเขียนคอมเม้นต์ โดยการใช้เครื่องหมาย//

มีคอมเม้นต์อีกแบบหนึ่งที่คือ การคอมเม้นต์แบบบล็อคหรือหลายบรรทัด ซึ่งจะทำให้สามารถ
คอมเม้นต์โค้ดได้มากกว่า 1 บรรทัดหรือค้อมเม้นต์ในส่วนที่ซับซ้อนขึ้น โดยสิ่งที่คอมเม้นต์จะอยู่ใน
เคร่อื งหมาย /* และ */ และนีเ่ ป็นตัวอย่างการคอมเม้นต์แบบหลายบรรทดั

รูปที่ 2.5 ตัวอย่างการเขียนคอมเม้นต์ แบบหลายบนรรทดั ด้วยเคร่อื งหมาย /*...*/

6|Page

หนว่ ยที่ 2 เรือ่ ง ภาษาคอมพวิ เตอร์ทใี่ ชใ้ นการเขยี นโปรแกรมบนอุปกรณเ์ คล่อื นที่

Keywords
keyword เป็นคำสงวนที่ไม่สามารถใช้ได้ในส่วนของโปรแกรมสำหรับการกระทำบางอย่าง เช่น
การใช้ในการประกาศชื่อตัวแปรและเมทธอด ในภาษา C# มีคำสงวนมากมายซึ่งแสดงในรายการ
ข้างล่างน้ี

ตารางรายการของ keyword ในภาษา C#

7|Page

หนว่ ยท่ี 2 เรอื่ ง ภาษาคอมพิวเตอร์ท่ีใชใ้ นการเขยี นโปรแกรมบนอปุ กรณเ์ คล่อื นที่

ที่มา : http://marcuscode.com/lang/csharp/introduction

3. ตัวแปรและประเภทขอ้ มลู

ตัวแปร

ตวั แปรถูกใช้เพื่อเกบ็ ข้อมลู ในหนว่ ยความจำเพือ่ นำข้อมูลเหลา่ นั้นไว้ใช้ภายหลังในโปรแกรม ใน
ภาษา C# น้ันมีตัวแปรประเภทต่างๆ ที่มีชนิดข้อมูลที่แตกตา่ งกันไป เช่น boolean integer floating point
string และพอยนเ์ ตอร์ โดยการประกาศตัวแปรน้ันมีรปู แบบดังนี้

รปู ที่ 2.8 รูปแบบการประกาศตวั แปร
โดยที่ type เป็นชนิดของข้อมูลพนื้ ฐานที่มีในภาษา C# แต่อยา่ งไรก็ตามมันยังสามารถเป็นชนิด
ข้อมลู แบบอื่นๆ ได้ เชน่ ออบเจค็ ซึ่งเราจะกลา่ วภายหลงั ในบทเรียนนี้ สว่ น identifier เปน็ ชื่อของตวั แปร
ที่เราตอ้ งการสร้างข้ึน

รูปที่ 2.9 ตัวอย่างในการประกาศตัวแปรในภาษา C#
ในการตั้งชื่อตัวแปรน้ัน ชื่อของตัวแปรไมส่ ามารถตรงกับคำสงวนทีม่ ีในภาษา C# ได้ และจะเป็น
แบบ case-sensitive นัน่ หมายความวา่ ตัวแปร nameและ NAME เปน็ ตัวแปรคนละตัวแปรกัน ในการต้ัง
ชือ่ ตวั แปรในภาษา C# จะมีกฏดังนี้

• ชือ่ ของตัวแปรสามารถประกอบไปดว้ ย ตัวอกั ษรภาษาอังกฤษ ตวั เลข และเครอ่ื งหมาย
_ เทา่ นั้น และไมส่ ามารถขึน้ ต้นดว้ ยตวั เลขได้

• ชื่อของตัวแปรต้องไม่ตรงกับคำสงานในภาษา C# แต่อย่างไรก็ตาม สามารถใช้
เคร่อื งหมาย @ นำหน้าชื่อตัวแปรได้หากต้องการใช้คำสงวน แต่นั่นไม่ใชว่ ิธีการปฏิบัติที่ดี

8|Page

หนว่ ยที่ 2 เรื่อง ภาษาคอมพิวเตอร์ท่ีใช้ในการเขยี นโปรแกรมบนอปุ กรณเ์ คล่ือนที่

• ในกฏการตั้งชื่อของตัวแปรที่ได้กล่าวมานั้นยังสามารถใช้กับการตั้งชื่อ เมธอด คลาส
Interfaces หรือสง่ิ ตา่ งๆ ที่ผู้ใช้เป็นคนกำหนดขนึ้ มา

ประเภทขอ้ มลู

ในภาษา C# มีประเภทข้อมูลเพียงพอที่ให้เราสามารถจัดการกับข้อมูลประเภทต่างๆ ได้ เช่น
ตวั อกั ษร ข้อความ ตวั เลขจำนวนเต็ม และจำนวนจริง เปน็ ต้น ซึ่งข้อมูลแต่ละประเภทจะใช้สำหรับเก็บ
ค่าที่แตกตา่ งกนั ออกไป เช่น เกบ็ ค่าคะแนนของผู้เล่นเกมส์ไว้ในตวั แปรประเภทจำนวนเต็ม หรือเก็บชื่อ
ไว้ในตวั แปรประเภทข้อความ เปน็ ต้น

ข้อมลู พนื้ ฐาน 4 ประเภทที่มีในภาษา C# ซึง่ ประเภทข้อมลู เหล่านเี้ ปน็ Primitive datatype หรอื
ประเภทข้อมูลพืน้ ฐานในการเขียนโปรแกรม

Characters: นี่เป็นประเภทของขอ้ มูลที่ใช้ในการเก็บตวั อักษร โดยการใช้คำส่งั char หรือ string
ในการประกาศตัวแปร

Integer: นี่เป็นประเภทข้อมลู ที่ใช้ในการเก็บข้อมลู ตัวเลขแบบจำนวนเตม็ โดยการใช้คำสงั่ int
หรือ long ในการประกาศตัวแปร แต่ที่แตกตา่ งกนั คือหน่วยความจำทีใ่ ช้ในการเก็บ เช่น long จะเบ็ ข้อ
มลู ไดม้ ากกวา่ int และมนั กใ็ ช้หนว่ ยความจำมากกว่าเชน่ กัน

Floating point: นี่เปน็ ประเภทของข้อมลู ทีใ่ ช้สำหรับการเกบ็ ตวั เลขแบบทศนิยมหรือจำนวนจริง
โดยการใช้คำส่ังอยา่ งเชน่ float หรือ double ในการประกาศตัวแปร

Boolean: ประเภทข้อมูลนีส้ ามารถเก็บข้อมูลได้เพียงแคส่ องคา่ คือ true และ false
ประเภทของข้อมูลแบบอื่นในภาษา C# นั้นจะเป็นประเภทข้อมูลแบบออบเจ็ค อาเรย์ ซึ่งจะมา
กับไลบรารี่ของภาษาหรือผู้ใช้กส็ ามารถสร้างข้ึนเองได้เช่นกนั

ตารางข้างล่างนเ้ี ป็นตารางแสดงประเภทของข้อมูลพน้ื ฐานในภาษา C#

9|Page

หน่วยท่ี 2 เรื่อง ภาษาคอมพิวเตอร์ทใี่ ช้ในการเขยี นโปรแกรมบนอุปกรณเ์ คลื่อนท่ี

การประกาศตวั แปร

วิธีการประกาศตวั แปรและใช้งานตัวแปรในภาษา C#

รปู ที่ 2.10 วิธีการประกาศตวั แปร

10 | P a g e

หน่วยที่ 2 เรือ่ ง ภาษาคอมพวิ เตอร์ที่ใช้ในการเขยี นโปรแกรมบนอปุ กรณเ์ คลื่อนที่

ในตัวอย่าง เราได้ประกาศตัวแปรที่ชื่อว่า x ซึ่งเป็นตัวแปรแบบจำนวนเต็ม โดยใช้คำสั่ง int ใน
การประกาศ และบรรทัดต่อมาเราได้กำหนดคา่ ให้กับตวั แปร อยา่ งไรก็ตามเราสามารถประกาศตัวแปร
และกำหนดค่าให้กบั มนั ไดพ้ ร้อมกัน

รปู ที่ 2.11 ตัวอยา่ งประกาศตวั แปร
ในตัวอย่างได้ประกาศตัวแปรมา 3 ตัวแปร ตัวแปร a เป็นประตัวประเภท Integer และ
กำหนดค่า 4 ให้เป็นค่าของมัน ตัวแปร b เป็นตัวแปรประเภท float และกำหนดค่า 10.5 ให้กับมัน
ตัวแปรตวั สดุ ท้าย name เปน็ ตัวแปรประเภท string และมีค่าคือ "Thomas"

รปู ที่ 2.12 ตัวอยา่ งประกาศตัวแปรแบบเตม็

11 | P a g e

หน่วยท่ี 2 เรื่อง ภาษาคอมพิวเตอร์ที่ใชใ้ นการเขยี นโปรแกรมบนอปุ กรณเ์ คลอ่ื นท่ี

รูปที่ 2.13 ผลลัพธข์ องโปรแกรม

Boolean

ฺBoolean เป็นประเภทข้อมูลท่ีสามารถเก็บได้สองค่าคือ true และ false ใช้สำหรับเก็บข้อมูลที่มี
คา่ เปน็ ไปได้เพียงสองคา่ หรือสองสถานะ เชน่ เพศชายและหญงิ กลางวนั และกลางคืน เปิดหรือปิด เป็น
ต้น Boolean นั้นเปน็ ข้อมลู ที่ใช้เป็น Expression ทีท่ ำงานรว่ มกับคำสั่งควบคุมหรือคำส่งั เงื่อนไข

12 | P a g e

หน่วยท่ี 2 เรอ่ื ง ภาษาคอมพวิ เตอรท์ ี่ใชใ้ นการเขยี นโปรแกรมบนอุปกรณเ์ คล่ือนที่

รูปที่ 2.14 ตัวอยา่ งการประกาศและใช้งานตัวแปรประเภท Boolean
ในตวั อยา่ งได้ประกาศตัวแปร isDay สำหรบั กำหนดวา่ เปน็ กลางวันหรือกลางคืน ใช้คำสง่ั If ใน
การตรวจสอบค่า เพราะว่าตัวแปรมีค่าเป็นจริง บล็อคภายในคำสั่ง If จึงทำงาน ต่อมาเป็นตัวแปร
gameOver ใช้ในการเกบ็ สถานะของเกมวา่ จบหรือยัง

รูปที่ 2.15 ผลลัพธก์ ารทำงานของโปรแกรม ในการใช้งานตัวแปรประเภท Boolean

13 | P a g e

หน่วยท่ี 2 เร่ือง ภาษาคอมพวิ เตอรท์ ีใ่ ชใ้ นการเขยี นโปรแกรมบนอปุ กรณเ์ คลื่อนท่ี
4. ประเภทขอ้ มลู ตวั เลขจำนวนเตม็

ประเภทจำนวนเต็มจะแบ่งเป็นหลายขนาด ซึง่ Byte เปน็ ข้อมูลทีเ่ กบ็ ค่าได้น้อยที่สดุ ส่วน Long
จะเกบ็ คา่ ได้มากที่สุด และนอกจากนีย้ ังมีประเภทแบบไม่มีเครือ่ งหมายด้วยที่เก็บเพียงจำนวนเต็มบวก
เทา่ นั้นที่เรียกว่า unsigned

รูปที่ 2.16 ตัวอยา่ งในการประกาศและใช้งานตัวแปรประเภทตัวเลข
ในตัวอย่างเป็นการประกาศตัวแปรในการเก็บตัวเลขที่ประกอบไปด้วยตัวแปรประเภทตา่ งๆ ที่
ได้ประกาศตวั แปร Integer สำหรบั เก็ยจำนวนของผลไมแ้ ละหาผลรวมในตัวแปร totalFruit และจากนั้น
แสดงผลรวมออกทางหน้าจอ

14 | P a g e

หน่วยท่ี 2 เร่ือง ภาษาคอมพิวเตอร์ทใี่ ช้ในการเขยี นโปรแกรมบนอุปกรณเ์ คลอ่ื นที่

รปู ที่ 2.17 ตัวอย่างการประกาศตวั แปรเก็บตัวเลขที่ประเภทต่างๆ

รูปที่ 2.18 ตัวอย่างการประกาศตวั แปรเกบ็ ตวั เลขทีป่ ระเภทตา่ งๆ
ต่อมาเป็นการประกาศตัวแปรสำหรับเก็บค่าของวันเดือนปี ใช้ตัวแปรประเภท byte และ short
เพราะวา่ การใช้ประเภทข้อมูลเหล่านีส้ ามารถเก็บค่าของวันที่ไดเ้ พียงพอแล้ว ดังนั้นควรจะเลอื กใช้ขนาด
ของตัวแปรให้เหมาะสมกับข้อมูล ในตัวอย่างในตัวแปร month และ day นั้นมีค่าที่มากที่สุดเป็น 31
ดังนั้นการเลือกใช้ byte ในการเก็บทำให้ประหยัดหน่วยความจำได้ และประกาศตัวแปรประเภท
decimal สำหรับเก็บค่าของตัวเลขขนาดใหญ่

รูปที่ 2.20 การเกิด Overflow
สุดท้ายเป็นการเกิด Overflow ในการเขียนโปรแกรม ซึ่งจะเกิดขึ้นเมื่อข้อมูลภายในตัวแปรนั้น
เพิ่มขึ้นมากกว่าค่าสูงสุด หรือลดลงมากกว่าค่าต่ำสุดที่ตัวแปรสามารถเก็บค่าได้ ในตัวอย่างเราได้
กำหนดค่าให้กับตัวแปร max จาก Property Int32.MaxValue ซึ่งเป็นค่าสูงสุดของข้อมูลแบบ Integer
หลังจากนั้นเราได้เพิ่มค่าของตัวแปรไป 1 ทำให้ค่าของตัวแปรเกินค่าสูงสุดที่รับได้ ซึ่งค่าสูงสุดของ
Integer คือ 2,147,483,647 ดงั น้ันตวั แปรจงึ Overflow ไปยังค่าต่ำสุด

15 | P a g e

หนว่ ยท่ี 2 เรือ่ ง ภาษาคอมพิวเตอรท์ ีใ่ ชใ้ นการเขยี นโปรแกรมบนอปุ กรณเ์ คลื่อนที่

รูปที่ 2.21 ผลลัพธ์ของโปรแกรมในการทำงานกบั ตัวเลข

5. ค่าคงที่

ค่าคงที่ เป็นตัวแปรที่ค่าไม่สามารถเปลี่ยนแปลงได้หลังจากที่ถูกสร้างขึ้น และค่าจะต้องถูก
กำหนดให้ในตอนที่สร้างทันที เนือ่ งจากคือตวั แปรประเภทหนึง่ การใช้งานจะเหมือนกับตัวแปรปกติ แต่
ในการประกาศต้องใช้คำสั่ง const นำหน้าเพอ่ื บ่งบอกว่าเป็นตัวแปรคา่ ค่งที่

รปู ที่ 2.21 การประกาศคา่ คงที่
const เป็นคำสั่งที่ใช้ในการประกาศค่าคงที่ type เป็นประเภทข้อมูลของค่าคงที่โดยมีหลักการ
เหมือนกับการประกาศตัวแปรทั่วไป identifier นั้นเป็นชื่อของค่าคงที่ โดยส่วนมากมักจะนิยมใช้เป็น
ตัวพมิ พใ์ หญ่ทั้งหมด value เป็นคา่ ของค่าคงที่ที่สร้างข้นึ และต้องกำหนดพร้อมกับตอนประกาศค่าคงที่
เสมอ
การประกาศค่าคงที่
การประกาศคา่ คงที่ ทำทกุ อยา่ งเหมือนการประกาศตัวแปรปกติ แต่จะใช้คำส่งั const คำหน้า
และกำหนดค่าทันที

รปู ที่ 2.22 การประกาศคา่ คงที่
ในตวั อยา่ ง ได้สร้างคา่ คงที่สามตัว ซึ่งมปี ระเภทข้อมลู แบบตา่ งๆ และกำหนดค่าทนั ที การ
ประกาศตวั แปรคา่ คงที่มกั จจะใช้อกั ษรตวั พมิ พใ์ หญใ่ นการตั้งชื่อให้กับคา่ คงที่

16 | P a g e

หน่วยท่ี 2 เรอ่ื ง ภาษาคอมพวิ เตอร์ท่ใี ช้ในการเขยี นโปรแกรมบนอุปกรณเ์ คล่ือนที่

ตัวอย่างแบบเต็มของการใช้งานค่าคงที่กับตัวแปรในภาษา C# เราจะเขียนโปรแกรมในการ
คำนวณหาพืน้ ทีข่ องวงกลม โดยในการทำงานกับวงกลมน้ันจะมีค่าหนึ่งทีเ่ กีย่ วข้องคือ ค่า Pi ซึ่งเป็นค่า
ของอัตรส่วนระหว่างเสน้ รอบวงกบั เสน้ ผา่ นศนู ยก์ ลางของวงกลมทีม่ ีคา่ ประมาณ 3.14

รูปที่ 2.23 คา่ คงทีใ่ นการคำนวณหาพืน้ ทีข่ องวงกลม
ในตัวอย่าง ประกาศตัวแปรค่าคงที่ PI และนำมาคำนวณหาพื้นที่ของวงกลมด้วยสมการหา
พนื้ ที่ เสน้ รอบวง ปรมิ าตร และพืน้ ที่ผิวจากรศั มีที่ไดก้ ำหนดในตัวแปร r ในการใช้ค่าคงที่แสดงให้เห็นว่า
สามารถเรยี กใช้ค่าคงที่ PI ที่มีความหมายเปน็ คา่ ของตวั เลข 3.14 ซึ่งช่วยลดความผิดพลาดในการเขียน
โปรแกรมไดเ้ ป็นอยา่ งมาก สังเกตุได้ว่าการใช้งานจะเหมือนการใช้ตัวแปรปกติ

รูปที่ 2.24 ตวั อย่างประกาศตัวแปรคา่ คงที่ PI

17 | P a g e

หน่วยที่ 2 เรื่อง ภาษาคอมพิวเตอรท์ ่ีใชใ้ นการเขยี นโปรแกรมบนอปุ กรณเ์ คล่อื นท่ี

รปู ที่ 2.25 ผลลัพธข์ องโปรแกรมในการใช้งานคา่ คงทีก่ บั การหาพืน้ ที่ของวงกลม
การใชง้ านค่าคงทีก่ บั อาเรย์

การใช้งานค่าคงที่กับอาเรย์ จะมีค่าคงที่สำหรับการกำหนดขนาดของอาเรย์ และใส่ชื่อและ
คะแนนของผู้เลน่ ลงไปในอาเรย์ และโปรแกรมจะบอกผู้เลน่ ทีช่ นะ ซึ่งคือผู้ทีได่ ้รับคะแนนสงู สดุ

รูปที่ 2.26 การใช้งานค่าคงทีก่ บั อาเรย์

18 | P a g e

หน่วยที่ 2 เร่อื ง ภาษาคอมพวิ เตอร์ทใี่ ช้ในการเขยี นโปรแกรมบนอุปกรณเ์ คลอ่ื นท่ี

ในตัวอย่าง ได้การประกาศค่าคงที่ SIZE สำหรับกำหนดขนาดของอาเรย์ที่จะใช้เก็บชื่อและ
คะแนน สร้างอาเรย์ names และ scores ที่มีขนาดตามทีไ่ ดก้ ำหนดในคา่ คงที่ SIZE คือ 5 น่นั หมายความ
ว่า อาเรยเ์ หลา่ นีม้ าสำหรับเกบ็ ชื่อและคะแนนของผู้เลน่ จำนวน 5 คน

รปู ที่ 2.27 การประกาศคา่ คงที่ SIZE สำหรับกำหนดขนาดของอาเรย์
ต่อมาใช้คำสง่ั For loop ในการวนอ่านชือ่ และคะแนนลงไปในอาเรย์ทั้งสอง โดยการวนน้ันจะวน
ตามจำนวนคา่ คงที่ SIZE ซึง่ ใช้ตวั แปร i เป็น index ของอาเรย์

รปู ที่ 2.28 คำสั่ง For loop ในการวนอา่ นชือ่ และคะแนนลงไปในอาเรย์
Loop ต่อมาเป็นการหาคนที่ได้คะแนนมากที่สุด เพราะว่ามีอาเรย์สองตัวแปร ดังนั้นจะหาว่า
Index ไหนของอาเรยท์ ีจ่ ะมีคะแนนมากทีส่ ุดใน scores ซึง่ กจ็ ะเป็น Index เดยี วกนั กบั ชอ่ื ในอาเรย์ names
ใช้คำส่งั For loop ในการวนซำ้ สำหรับเปรียบเทียบเพื่อหาคา่ สูงสุด และในตอนท้ายเราจะได้ Index ของ
อาเรย์ที่มีคา่ สงู สดุ

19 | P a g e

หน่วยท่ี 2 เรื่อง ภาษาคอมพิวเตอรท์ ใี่ ช้ในการเขยี นโปรแกรมบนอปุ กรณเ์ คลื่อนที่

รูปที่ 2.29 ผลลัพธ์การทำงานของโปรแกรม
ผลลัพธ์การทำงานของโปรแกรม โดยเราได้กรอกชื่อและคะแนนของผู้เล่นทั้ง 5 คน และได้ผู้
ชนะทีม่ คี ะแนนมากทีส่ ุดคือ Danny ซึ่งเขามีคะแนนเป็น 80

6. ตวั ดำเนินการ

ตัวดำเนินการ คือเคร่อื งหมายที่ใช้เพือ่ ให้ทำงานกับตัวแปรและคา่ คงที่เพื่อสร้าง expression ใน
การเขียนโปรแกรม ในภาษา C# มีตวั ดำเนินการประเภทตา่ งๆ ที่คุณจะต้องรจู้ ักกอ่ นที่จะเขียนโปรแกรม
ข้างล่างน้เี ป็นรายการของประเภทตวั ดำเนินการทีค่ ณุ จะได้เรยี นในบทเรียนนี้

➢ Assignment operator
➢ Arithmetic operators
➢ Compound assignment
➢ Increment and decrement
➢ Relational and comparison operators
➢ Logical operators
➢ Conditional ternary operator
➢ Bitwise operators
➢ Explicit type casting operator

20 | P a g e

หน่วยที่ 2 เรือ่ ง ภาษาคอมพิวเตอร์ทใี่ ชใ้ นการเขยี นโปรแกรมบนอุปกรณเ์ คล่ือนที่

Assignment operator

assignment operator หรือตัวดำเนินการกำหนดค่าใช้เคื่องหมายเท่ากับ = มันใช้สำหรับ
กำหนดค่าให้กบั ตวั แปรในภาษา

รูปที่ 2.30 ตวั อยา่ งตวั ดำเนินการกำหนดคา่

Arithmetic operators

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

ตารางของตัวดำเนนิ การทางคณิตศาสตร์ในภาษา C#

21 | P a g e

หนว่ ยท่ี 2 เร่ือง ภาษาคอมพิวเตอรท์ ใี่ ช้ในการเขยี นโปรแกรมบนอุปกรณเ์ คล่ือนท่ี

รปู ที่ 2.32 ตวั อยา่ งในการใช้ตวั ดำเนินการทางคณิตศาสตร์
ในตวั อยา่ ง สร้างตัวแปรสองตัวสำหรบั เห็นคา่ ตัวเลขจำนวนเตม็ (integer) และอีกหน่งึ ตวั เพื่อ
เกบ็ จำนวนจริง (floating point) ตัวดำเนินการทางคณิตศาสตร์ สำหรบั การบวก การลบ การคูณ การ
หาร และมอดดโู ล (การหารเอาเศษ)

รูปที่ 2.33 ผลลัพธ์เมือ่ โปรแกรมไดร้ ัน

22 | P a g e

หน่วยท่ี 2 เรอื่ ง ภาษาคอมพิวเตอร์ที่ใชใ้ นการเขยี นโปรแกรมบนอปุ กรณเ์ คลื่อนที่

Compound assignment

Compound assignment operators เป็นตัวดำเนินการใช้สำหรับปรับปรุงหรืออัพเดทค่าของ
ตัวแปร โดยมีขอ้ กำหนดว่าข้อมลู ใหมน่ ั้นต้องมีความสัมพันธก์ ับข้อมูลเดมิ เช่น เพิม่ คา่ ของ x ไปอีก 10
กล่าวอีกนัยหนึ่งมนั เป็นรูปแบบสน้ั ของ arithmetic operators

ตารงของ compound assignment operators

รูปที่ 2.34 ตัวอยา่ งการใช้งาน
Increment และ decrement Increment และ decrement เป็นตัวดำเนินการที่ใช้สำหรับเพิ่มค่า
และลดค่าตามลำดับ ผลลัพธ์คือค่าของตัวแปรจะเพิ่มขึ้นหรือลดลง 1 เท่านั้น ซึ่งในตัวดำเนินการ
increment และ decrement ก็จะแบ่งออกเปน็ 2 แบบคือ prefix และ postfix และเครื่องหมายที่ใช้ในตวั
ดำเนนิ การนคี้ ือ ++ และ –

23 | P a g e

หน่วยท่ี 2 เร่อื ง ภาษาคอมพวิ เตอรท์ ใี่ ชใ้ นการเขยี นโปรแกรมบนอุปกรณเ์ คลื่อนท่ี

ตารงของ ตัวดำเนนิ การทีใ่ ช้สำหรับเพ่มิ คา่ และลดคา่

Prefix เป็นการใส่เครื่องหมายไว้หน้าของตัวแปร การทำงานค่าของตัวแปรจะเพิ่มก่อนที่จะ
ทำงานคำสง่ั ปัจจบุ นั ในขณะที่ postfix เป็นการใสเ่ ครือ่ งหมายทางดา้ นหลัง การทำงานค่าของตัวแปรจะ
ถูกเพิ่มข้นึ หลงั จากทีค่ ำสงั่ ปัจจบุ ันทำงานเสร็จส้นิ แล้ว

รปู ที่ 2.36 ตวั อย่างการใช้ ใส่เคร่ืองหมาย Prefix และ postfix

รูปที่ 2.37 ผลลพั ธ์ชองโปรแกรม

24 | P a g e

หนว่ ยท่ี 2 เรื่อง ภาษาคอมพวิ เตอรท์ ีใ่ ชใ้ นการเขยี นโปรแกรมบนอปุ กรณเ์ คล่ือนที่

จากตัวอยา่ งข้างบน มีตัวแปรสองตัวคือ a และ b และได้กำหนดคา่ เริ่มต้นให้กับทั้งสองเป็น 5
ตัวแปร a น้ันจะแสดงผลออกมาเปน็ 6 เพราะวา่ การทำงานของ increment แบบ postfix จะเพิ่มคา่ ก่อน
สว่ น b น้ันยงั คงเปน็ 5 เพราะจะต้องเพิม่ ค่าหลังจากการทำงานของบรรทดั น้ันเสรจ็ ส้นิ

Relational และ comparison operators

ตัวดำเนินการเปรียบเทียบ (comparison) และความสัมพันธ์ (relational) ถูกใช้ในการสร้าง
expression กับตัวแปรและค่าคงที่ โดยผลลัพธ์ของ expression จะมีแค่เพียง true หรือ false เท่านั้น
มักจะใช้เพื่อสร้างเงื่อนไขเพื่อใช้กับคำสั่งในการเปรียบเทียบ เช่น if else, switch, while, do-while, for
เป็นต้น

ตารางของ relational และ comparison operators

รปู ที่ 2.38 ดตู วั อยา่ งในการใช้ตัวดำเนินการเปรียบเทียบ

25 | P a g e

หนว่ ยท่ี 2 เรื่อง ภาษาคอมพวิ เตอร์ทใ่ี ช้ในการเขยี นโปรแกรมบนอุปกรณเ์ คล่ือนท่ี

รูปที่ 2.39 ผลลพั ธ์เมื่อได้รันโปรแกรม
จากตัวอยา่ งข้างบน เราได้ใช้ตัวดำเนินการเปรียบเทียบ == เพื่อตรวจสอบถ้า n น้ันเป็นจำนวน
คู่ แล้วโปรแกรมก็จะทำงานในบล็อคคำสั่งของ IF ต่อมาใช้ตัวดำเนินการเปรียบเทียบน้อยกวา่ < เพื่อ
ตรวจสอบวา่ ถ้า x น้อยกว่า y เนือ่ งจาก x ไมไ่ ดน้ ้อยกวา่ y ดงั นั้นโปรแกรมจงึ ไมท่ ำงานในบล็อคคำส่ัง
ของ IF

Logical operators

ตัวดำเนินการเชิงตรรกะ (logical operators) มักจะใช้ในการตรวจสอบกับค่าของ Boolean โดย
ปกติตวั ดำเนินการเปรยี บเทียบจะให้ผลลพั ธเ์ ป็น Boolean อย่แู ล้ว ดำเนนิ การเชิงตรรกะอยู่ 3 แบบ

ตารางของ logical operators

26 | P a g e

หน่วยท่ี 2 เรือ่ ง ภาษาคอมพวิ เตอรท์ ่ีใชใ้ นการเขยี นโปรแกรมบนอุปกรณเ์ คล่อื นท่ี

รปู ที่ 2.40 ตวั อย่างการใช้ตัวดำเนินการเชิงตรรกะ
จากตัวอย่างด้านบนเราได้สร้างตัวแปร boolean สำหรับเก็บค่าจาก expression ที่ถูก
ประเมินผลกับโอเปอแรน ตัวดำเนินการเปรียบเทียบและตัวดำเนินการตรรกะ ที่มันจะ return ค่า
สุดท้ายคือ True หรือ False

รปู ที่ 2.41 ผลลพั ธข์ องโปรแกรมตัวดำเนินการตรรกะ
ตวั ดำเนินการตรรกะกับคำสง่ั เงือ่ นไขหรือคำสง่ั วนซ้ำ ดงั ตัวอย่างข้างล่างน้ี

27 | P a g e

หนว่ ยที่ 2 เร่อื ง ภาษาคอมพวิ เตอร์ทใี่ ชใ้ นการเขยี นโปรแกรมบนอุปกรณเ์ คลือ่ นที่

รปู ที่ 2.42 ตวั ดำเนินการตรรกะกับคำส่งั เงื่อนไขหรือคำส่งั วนซ้ำ
ในตัวอย่าง ได้สร้างเงื่อนไขเพิม่ เติมโดยการใช้ตัวดำเนินการตรรกะ ใช้ตัวดำเนินการ "and" &&
นั่นหมายความว่าแต่ละ expression ย่อยต้องมีค่าเป็นจริง สำหรับการซื้อเกมผู้ใช้ต้องมีอายุตั้งแต่ 18
ปีขึนไปและต้องมีเงินต้ังแต่ 120 ขนึ้ ไป สำหรับการซ้ือภาพยนตร์ ใช้ตวั ดำเนินการ "or" || โดยเราตอ้ งการ
เพียงแค่เงื่อนไขใดเงือ่ นไขหนึง่ เท่านนั้ ทีเ่ ปน็ จริง หรือท้ังสอง

Conditional ternary operator (?)

ternary operator นั้นจะใช้เครื่องหมาย ? ในการประเมินค่าของ expression และจะให้ผลลัพธ์
เป็นค่าแรกถ้าหาก expression เป็น true และค่าที่สองถ้า expression เป็น false โดยค่าทั้งสองต้องเป็น
ประเภทหรือชนิดข้อมลู ชนิดเดยี วกัน โดยมันมีรปู แบบการใช้งานดังนี้

28 | P a g e

หน่วยท่ี 2 เรื่อง ภาษาคอมพิวเตอรท์ ่ใี ชใ้ นการเขยี นโปรแกรมบนอุปกรณเ์ คลือ่ นที่

รูปที่ 2.42 ternary operator
ในตัวอย่าง จากคำสั่ง cc == "NY" นั้นคือ expression ที่สร้างขึ้นจาก ternary operator และ
"New York" นั้นจะผลเป็รผลลัพธ์เมื่อ expression นี้เป็น true และค่าที่สองคือ "Other states" จะเป็น
ผลลัพธเ์ มือ่ expression เป็น false จำไว้ว่าคา่ ท้ังสองจะต้องเป็นประเภทข้อมูลเดยี วกันเสมอ

รูปที่ 2.43 ผลลัพธ์ของโปรแกรม

Bitwise operators

ในภาษา C# จะมีตัวดำเนินการระดับบิท (bitwise operators) โดยจะทำงานกับค่าของบิท
ในรปู แบบตา่ งๆ ของข้อมูลที่เกบ็ ไว้ในตวั แปร

ตารางของ Bitwise operators

29 | P a g e

หน่วยท่ี 2 เร่อื ง ภาษาคอมพิวเตอรท์ ี่ใช้ในการเขยี นโปรแกรมบนอุปกรณเ์ คลื่อนที่

Explicit type casting operator

Explicit type casting หมายความว่าเป็นการแปลงจากประเภทข้อมูลชนิดหนึ่งไปเป็นประเภท
ข้อมูลอีกชนิดหนึ่ง Explicit type casting จะเกิดขึ้นอัตโนมติเมื่อ literals ให้กับตัวแปรหรือคา่ คงที่ หรือ
สามารถเกิดขนึ้ โดยการใช้วิธกี ารของ c-like ซึง่ สืบทอดมาจาดภาษา C

รูปที่ 2.44 การแปลงจากประเภทข้อมลู ชนิดหนึง่ ไปเปน็ ประเภท

7. คำสงั่ ควบคุม

คำสงั่ เลือกเงือ่ นไข

คำสั่งเงื่อนไข (selection statement) เป็นคำสั่งที่สามารถควบคุมโปรแกรมให้ทำงานตาม
ต้องการ ตามเงื่อนไขทีก่ ำหนดให้
คำส่งั If

คำสั่ง if เป็นคำสั่งเลือกพื้นฐานในการเขียนโปรแกรมในทุกๆ ภาษา มันถูกใช้เพื่อควบคุม
โปรแกรมเพื่อให้คำงานในบล็อกของ if ถ้าตรงกับเงื่อนไขที่กำหนดไว้ โดยคำสั่ง if มีรูปแบบการใช้งาน
ดังนี้

expression คือเงื่อนไขที่จะต้องกำหนดเพื่อที่จะให้โปรแกรมทำงาน ถ้า expression เป็น true
โปรแกรมจะทำงานในบล็อกคำสั่งของ If ที่ล้อมรอบด้วย { และ } ถ้า expression เป็น false จะถูก
เพิกเฉยและไปทำงานบรรทัดตอ่ ไปหลงั บลอ็ คของ If

30 | P a g e

หน่วยท่ี 2 เรอื่ ง ภาษาคอมพวิ เตอรท์ ่ใี ช้ในการเขยี นโปรแกรมบนอุปกรณเ์ คลอื่ นที่

จากตวั อยา่ งดา้ นบน ใช้คำส่งั if เพื่อตรวจสอบช่อื ในตัวแปร name ว่าถ้าเท่ากบั "Mateo" จะทำ
ให้ expression เป็น true และจะแสดงคำว่า "Welcome, Mateo!" ออกทางหน้าจอคอมพิวเตอร์

Note: การเปรียบเทียบสตริงในภาษา C# นั้นเป็นแบบ case-sensitive นั่นหมายความว่า
"Mateo" และ "mateo" นั้นเปน็ คนละคา่ กัน
คำสง่ั If-else if

คำสงั่ else if สำหรบั เงือ่ นไขที่สองและใช้คำสั่ง else สำหรบั เงื่อนไขในกรณีที่ไม่ตรงกับเงื่อนไข
ใดๆ กอ่ นหน้าเลย

ตวั อย่างกับโปรแกรมตรวจสอบเกรดโดยการใช้คำส่ัง if-else

31 | P a g e

หนว่ ยที่ 2 เรอื่ ง ภาษาคอมพวิ เตอร์ทใี่ ช้ในการเขยี นโปรแกรมบนอปุ กรณเ์ คลือ่ นที่

ในตวั อยา่ ง เป็นตัวแปรสำหรับการตรวจสอบเกรดโดยการใสค่ ำแนนลองไปในตัวแปร score
และโปรแกรจะนำไปคำนวณเกรดทไ่ี ด้ คือถ้าคะแนนต้ังแต่ 80 ขนึ้ ไปจะได้เกรด A, 70 จะได้เกรด b, 60

เกรดจะได้ C ไปเร่อื ยๆ และในคำสั่ง else ไมต่ รงกบั เงื่อนไขใดๆ ก่อนหน้าเลย

รูปที่ 2.45 ผลลพั ธเ์ มือ่ เราได้ลองใสค่ ่าคะแนนตา่ งๆ ลงบนโปรแกรม

คำสง่ั Switch case

คำสั่งการเลือกอีกแบบหนึ่งคือคำสั่ง switch case ซึ่งทำงานคล้ายกับคำสั่ง if แต่ใช้สำหรับ
เปรยี บเทียบกับคา่ คงทีเ่ ท่านน้ั ซึ่งมรี ูปแบบการใช้งานดังน:ี้

โดย inputValue เป็นค่าที่ต้องการนำไปเปรียบเทียบกับค่าคงที่ในแต่ละกรณี (case) ในบล็อก
ของ switch ที่เรียงลำดับกัน เมื่อเงื่อนไขตรงกับ case ใดๆ โปรแกรมจะทำงานข้างของคำสั่ง case
จนกวา่ มนั จะพบคำส่ัง break เพื่อที่จะออกจากบล็อกของ switch

32 | P a g e

หนว่ ยท่ี 2 เรื่อง ภาษาคอมพวิ เตอร์ทใ่ี ช้ในการเขยี นโปรแกรมบนอปุ กรณเ์ คลอื่ นท่ี

รูปที่ 2.46 ตวั อยา่ งการใช้งาน switch-case

8. คำสง่ั วนซำ้

คำสั่งวนซำ้ เพือ่ ควบคุมโปรแกรม เช่น คำส่ัง while loop, do-while loop, for loop และ foreach
loop

คำสง่ั วนซำ้ (loop statements) ถกู ใช้เพื่อควบคุมโปรแกรมเพือ่ ให้โปรแกรมทำบางส่วนของโค้ด
ซ้ำๆ มีรปู แบบหลายประเภททีส่ ามารถใช้ได้

คำสงั่ While loop

คำสง่ั while loop นั้นเป็นคำส่ังวนซ้ำที่ง่ายทีส่ ุดในภาษา C# โดยมีรูปแบบการใช้งานดงั นี้

33 | P a g e

หน่วยที่ 2 เรอื่ ง ภาษาคอมพวิ เตอรท์ ่ีใช้ในการเขยี นโปรแกรมบนอปุ กรณเ์ คล่อื นที่

while loop นั้นจะใช้ในการทำซ้ำส่วนของโปรแกรมในขณะที่ expression เป็น true จนกว่า
expression เป็น false โปรแกรมจะออกจาก while loop และทำงานต่อไปหลังจากลูป

รูปที่ 2.46 ตัวอย่างการใช้ while loop
ในตัวอย่าง เป็นตัวอย่างในการใช้ while loop เพื่อนับเลข โดยโปรแกรมจะนับเริ่มจาก 1 ถึง 10
ได้มีการกำหนดค่าเริ่มต้นให้กับตัวนับเป็น 1 และ expression ของเราคือ n <= 10 นั่นหมายความว่า
โปรแกรมจะทำงานในลูปของ while ตราบใดที่คา่ ของตวั แปร n ยังน้อยกว่าหรือเทา่ กบั 10 หลังจากนั้น
จะออกจากลปู และแสดงข้อความ "Loop ended" บรรทดั สุดทา้ ย ในลปู ก็จะแสดงคา่ ของ n และเพิ่มค่า
ขนึ้ ในแตล่ ะรอบโดยคำสง่ั n++ เพือ่ ไม่ให้โปรแกรมอยใู่ นลปู ตลอดไป

รูปที่ 2.47 ผลลัพธ์จากตวั อยา่ งการใช้ while loop เพือ่ นบั ตวั เลข

34 | P a g e

หนว่ ยที่ 2 เรอ่ื ง ภาษาคอมพิวเตอร์ทใ่ี ช้ในการเขยี นโปรแกรมบนอุปกรณเ์ คลอ่ื นที่

คำสั่ง Do-while loop

do-while loop นั้นคล้ายกับ while loop ซึ่งสามารถใช้ทดแทนกันได้ โดยมีรูปแบบการใช้งาน
ดังนี้

สิ่งที่แตกต่างของ do-while loop คือการตรวจสอบ expression หลังจากการทำงานรอบแรก
เสรจ็ ส้นิ นัน่ หมายความว่า do-while loop จะต้องทำงานอยา่ งน้อย 1 รอบ สงั เกตุว่า expression จะอยู่
ทีต่ อน้ทายของลปู

รปู ที่ 2.49 ตัวอย่าง do-while loop
ในตัวอย่าง เป็นการใช้ do-while loop เพื่อถามให้ผู้ใช้ป้อนตัวเลข (0) เพื่อออกจากลูป
ถ้าตัวเลขที่ใส่เข้ามานั้นไม่ใช่ศูนย์ โปรแกรมก็จะถามให้ใส่ใหม่เรื่อยไป และเมื่อใส่เลขศูนย์ ทำให้
expression ของเราเปน็ false และทำให้โปรแกรมออกจากลูป

35 | P a g e

หน่วยที่ 2 เร่อื ง ภาษาคอมพิวเตอรท์ ่ใี ช้ในการเขยี นโปรแกรมบนอุปกรณเ์ คล่ือนท่ี

รปู ที่ 2.50 ผลลัพธข์ องตัวอยา่ งการใช้ do while loop เมื่อทดสอบรันโปรแกรมและป้อนตัวเลข

คำสง่ั For loop

for loop นั้นเป็นลูปที่ใช้ทำซ้ำคำสั่งหรือชุดของคำสัง่ เป็นจำนวนรอบที่แน่นอน โดยมีรูปแบบใน
การใช้งานดังนี้

ในการใช้ for loop สามารถกำหนดคา่ เริม่ ต้น สร้างเงื่อนไข (expression) และทำการกำหนดการ
เพิ่มคา่ หรือลดคา่ ของตวั ทำซ้ำไดก้ ่อนทีล่ ปู จะเริม่ ทำงาน จะมีประโยชนท์ ีจ่ ะให้สะดวกเมือ่ รจู้ ำนวนรอบที่
แนน่ อนในการวนซำ้ ของโปรแกรม

36 | P a g e

หน่วยท่ี 2 เรื่อง ภาษาคอมพิวเตอร์ทีใ่ ช้ในการเขยี นโปรแกรมบนอปุ กรณเ์ คลื่อนที่

ในตวั อยา่ งเปน็ การใช้ for loop เพื่อแสดงตวั เลข 1 ถึง 10 เช่นกัน สงั เกตวุ ่าการกำหนดค่าเริม่ ต้น
การสร้างเงื่อนไขและการเพิ่มค่าจะถูกใส่ไว้ที่ส่วนหัวของโปรแกรมที่เดียว อย่างไรก็ตามเป็นแค่
ทางเลอื ก และสามารถนำไปใส่ที่ใหมไ่ ด้ถา้ หากต้องการ เหมือนตัวอยา่ งข้างล่างน้ี

รูปที่ 2.51 การใช้ for loop เพื่อแสดงตวั เลข 1 ถึง 10
จะเห็นว่ามันได้ผลลัพธ์เหมือน while loop ซึ่งลูปทั้งสองประเภทนี้ก็สามารถใช้ทดแทนกันได้
เช่นกนั แต่อาจจะเขียนแตกตา่ งกนั เล็กน้อย

รูปที่ 2.52 ผลลพั ธข์ องโปรแกรมทั้งสองทีใ่ ช้ for loop

คำสง่ั foreach loop

foreach loop ใช้สำหรบั วนซ้ำค่าในอาเรย์ ที่ทราบหรือไมท่ ราบขนาด โดยลูปจะเริ่มอ่านค่าจาก
สมาชิกตวั แรกในอาเรย์ ไปจนถึงตวั สดุ ท้าย

37 | P a g e

หนว่ ยท่ี 2 เรือ่ ง ภาษาคอมพิวเตอร์ทใ่ี ชใ้ นการเขยี นโปรแกรมบนอปุ กรณเ์ คลื่อนท่ี

รูปที่ 2.53 ตัวอยา่ งอาเรย์ของตัวเลขแบบ integer
ในตัวอย่างสร้างอาเรย์ของตัวเลขแบบ integer ซึ่งมีสมาชิกทั้งหมด 8 ตัว ในการวนซ้ำแต่ละ
รอบ ค่าจะเกบ็ ไว้ทีต่ วั แปร i แล้วก็แสดงผลออกทาง console

รูปที่ 2.54 ตวั อยา่ งผลลัพธข์ องการใช้ foreach loop

9. คำสั่ง break

คำสั่ง break เพื่อบังคับให้ลูปสิ้นสุดการทำงานในทันที การหยุดการทำงานของลูปโดยการใช้
คำสั่ง break มักจะสร้างให้กบั เงื่อนไขบางอย่าง condition เพือ่ ทำให้โปรแกรมออกจากลูป สามารถใช้ได้
กบั ลปู ทุกประเภทท้ัง while, do-while, for และ foreach loop

38 | P a g e

หน่วยที่ 2 เรอ่ื ง ภาษาคอมพวิ เตอร์ท่ใี ช้ในการเขยี นโปรแกรมบนอปุ กรณเ์ คลื่อนท่ี

รปู ที่ 2.55 ตวั อย่างการใช้คำสงั่ break
ในตวั อย่างโปรแกรมจะออกจากลูปเมื่อ i มีค่าเทา่ กบั 5 ไม่สำคัญวา่ เงอื่ นไขในลูปที่ i <= 10 จะ
เปน็ จริงหรือไม่

รปู ที่ 2.56 ผลลัพธข์ องตัวอย่างการใช้คำสัง break

10. คำส่ัง continue

คำส่งั continue ใช้เพื่อข้ามการวนซำ้ รอบปจั จบุ ัน มันจะข้ามการทำงานคำสงั่ ทั้งหมดภายในลูป
หลงั จากคำสง่ั continue และไปเริ่มต้นรอบใหม่ มันสามารถใช้ไดก้ ับลูปทกุ ประเภท

39 | P a g e

หนว่ ยท่ี 2 เร่อื ง ภาษาคอมพวิ เตอร์ทีใ่ ช้ในการเขยี นโปรแกรมบนอปุ กรณเ์ คลอ่ื นที่

ในตัวอยา่ งไดใ้ ช้คำสั่ง continue เพือ่ ข้ามการแสดงผลของตวั เลขคู่ โดยคำส่ังจะทำงานเมื่อ i %
2 == 0 นน่ั หมายความว่า i จะข้ามการแสดงผลไป

รปู ที่ 2.57 ลัพธ์ตัวอย่างการใช้คำสงั่ continue
ที่มา : http://marcuscode.com/lang/csharp/loop-statements

40 | P a g e


Click to View FlipBook Version