สวัสดีครับ พบกับ TUTORTONG อีกครั้งกับบทความสอน C++ มาถึงบทที่ 3 กันแล้วนะครับ บทนี้ก็ถือว่าเป็นส่วนสำคัญอีกบทหนึ่งของการเขียนโปรแกรมเลยก็ว่าได้ เพราะเป็นเรื่องพื้นฐานเกี่ยวกับตัวแปร (Variable) ในภาษา C++ นั่นก็คือ เรื่องของข้อมูล ชนิดของข้อมูล และ ชนิดข้อมูลพื้นฐาน ซึ่งข้อมูลนั้นต้องใช้แทบจะทุกโปรแกรม ที่เขียนขึ้นมาเลยก็ว่าได้ ดังนั้น บทนี้ขอให้ตั้งใจทำความเข้าใจให้ดี ถ้าบทนี้จำได้ เข้าใจ ก็สบายล่ะครับ ^^
ข้อมูล
ข้อมูลในที่นี้หมายถึง ค่าต่างๆ ที่มีส่วนเกี่ยวข้องกับโปรแกรมที่เราจะเขียนขึ้น ทั้งในส่วน ข้อมูลเข้า (Input) ประมวลผล (Process) และ ผลลัพธ์ (Output)
ตัวอย่างที่ 1
ถ้าเราต้องการเขียนโปรแกรมบวกเลขสองจำนวน จากนั้น ทำการแสดงผลบวก
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว
1) ตัวเลขที่จะนำมาบวกตัวแรก
2) ตัวเลขที่จำนำมาบวกตัวที่สอง
3) ผลลัพธ์ของการบวก
ตัวอย่างที่ 2
ถ้าเราต้องการเขียนโปรแกรมหาพื้นที่สี่เหลี่ยม ซึ่งใช้สูตร กว้าง x ยาว จากนั้นทำการแสดงผล
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว
1) ความกว้าง
2) ความยาว
3) พื้นที่
ซึ่งการอ่านโจทย์ แล้วจะสามารถตีโจทย์ได้ว่า " มีข้อมูล " กี่ตัวนั้น ต้องอาศัย ประสบการณ์การทำโจทย์พอสมควรครับ เพราะฉะนั้นจุดนี้น้องๆ ที่เพิ่งหัดใหม่ ต้องพยายามทำโจทย์เยอะๆ และไม่ท้อครับ ^^
ชนิดของข้อมูล
ชนิดของข้อมูล คือ การแยกแยะว่าข้อมูลที่เราได้มาจากโจทย์นั้น เป็นประเภทไหน ซึ่งในเบื้องต้นนี้เราจะมาทำความรู้จักกับ ชนิดข้อมูลพื้นฐาน กันก่อนครับ
ตัวอย่างที่ 1
ถ้าเราต้องการเขียนโปรแกรมบวกเลขสองจำนวน จากนั้น ทำการแสดงผลบวก
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว1) ตัวเลขที่จะนำมาบวกตัวแรก -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 1 , 1.1 ,10.1 เป็นต้น2) ตัวเลขที่จำนำมาบวกตัวที่สอง -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 2 , 2.1 ,20.1 เป็นต้น3) ผลลัพธ์ของการบวก -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 3 , 3.1 ,30.1 เป็นต้น
ตัวอย่างที่ 2
ถ้าเราต้องการเขียนโปรแกรมหาพื้นที่สี่เหลี่ยม ซึ่งใช้สูตร กว้าง x ยาว จากนั้นทำการแสดงผล
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว1) ความกว้าง -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 5 , 5.1 ,50.1 เป็นต้น2) ความยาว -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 6 , 6.1 ,60.1 เป็นต้น3) พื้นที่ -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 30 , 30.1 ,300.1 เป็นต้น
เคล็ดลับการหา ชนิดข้อมูล ง่ายๆ คือให้คุณลอง เขียนตัวอย่างข้อมูลที่เป็นไปได้ อย่างที่ผมได้ยกตัวอย่างให้ดูเพราะเมื่อเราเห็นตัวอย่างข้อมูลแล้ว ก็จะเป็นการง่ายที่จะแยกแยะ ออกได้ว่า ข้อมูล นี้มี ชนิดข้อมูล เป็นอะไร
ชนิดข้อมูลพื้นฐาน ( Primitive data type ) ในภาษา C++
ชนิดข้อมูลพื้นฐาน คือ ข้อมูลประเภท ตัวเลขจำนวนเต็ม (Interger) , ตัวเลขจำนวนทศนิยม (Floating point) , ค่าความจริง (Boolean) และ อักขระ (Character)
ชนิดข้อมูล | Source Code | ข้อมูล | ตัวอย่างข้อมูล |
จำนวนเต็ม (Integer) | int | ตัวเลขจำนวนเต็ม , จำนวนลูกค้า , จำนวนสินค้าที่ขายได้ เป็นต้น | 1 , 15 , 100 , 1000 , 2150 |
จำนวนทศนิยม (Floating point) | float | ตัวเลขทศนิยม , เกรดเฉลี่ย , จำนวนเงิน เป็นต้น | 1.1 , 3.45 |
ค่าความจริง (Boolean) | bool | มากกว่า 10 หรือไม่ , มีค่าเท่ากับ 10 หรือไม่ , เป็นตัวอักษร 'A' หรือไม่ เป็นต้น | True , False |
อักขระ (Character) | char | ตัวอักษร , สถานะ , เกรด เป็นต้น | 'a' , 'B' , 'A' |
ตัวอย่างที่ 1
ถ้าเราต้องการเขียนโปรแกรมบวกเลขสองจำนวน จากนั้น ทำการแสดงผลบวก
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว1) ตัวเลขที่จะนำมาบวกตัวแรก -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 1 , 1.1 ,10.1 เป็นต้นint หรือ float
2) ตัวเลขที่จำนำมาบวกตัวที่สอง -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 2 , 2.1 ,20.1 เป็นต้นint หรือ float
3) ผลลัพธ์ของการบวก -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 3 , 3.1 ,30.1 เป็นต้นint หรือ float
ตัวอย่างที่ 2
ถ้าเราต้องการเขียนโปรแกรมหาพื้นที่สี่เหลี่ยม ซึ่งใช้สูตร กว้าง x ยาว จากนั้นทำการแสดงผล
วิเคราะห์จากโจทย์
โปรแกรมนี้มีข้อมูล 3 ตัว1) ความกว้าง -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 5 , 5.1 ,50.1 เป็นต้นint หรือ float
2) ความยาว -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 6 , 6.1 ,60.1 เป็นต้นint หรือ float
3) พื้นที่ -> เป็นตัวเลข อาจเป็นจำนวนเต็ม หรือ จำนวนทศนิยมก็ได้
ตัวอย่างข้อมูลที่เป็นไปได้ เช่น 30 , 30.1 ,300.1int หรือ float
ในบทนี้ยังไม่ครอบคลุม ข้อมูลทุกประเภทนะครับ เพราะในบทนี้เราจะสนใจเฉพาะ พื้นฐานเท่านั้น ให้ท่านผู้อ่านจำและทำความเข้าใจพื้นฐานง่ายๆ เหล่านี้ให้แม่น ก่อนนะครับ ^^
GOTCHA !!
เอาล่ะครับเป็นยังไงกันบ้างครับ บทนี้เป็นทฤษฎีที่เกี่ยวกับ ข้อมูล ซะส่วนใหญ่อ่านแล้วก็อย่าเพิ่งง่วงกันล่ะครับ ^^ หากใครอ่านแล้วยังไม่ค่อยเข้าใจยังไง งงๆ ตรงไหนก็เขียนเข้ามาถามกันได้ที่ TUTORTONG นะครับ
สิ่งที่คุณจะทำได้หลังจากอ่านบทความนี้
- คุณสามารถแยกสิ่งที่เป็น ข้อมูล ออกจากโจทย์ได้
- คุณสามารถแยกข้อมูลได้ว่าเป็น ข้อมูลชนิด ใด