Lua 003 Types – Number ประเภทข้อมูล จำนวน

Lua 003 Types – Number ประเภทข้อมูล จำนวน

           

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

            Types ใน Lua จะมีด้วยกัน แปดชนิดที่เป็นพื้นฐานคือ number, string, boolean, table, function, nil, userdata, thread

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

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

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

            เปิด Zero Brane Studio ขึ้นมาครับ เรามาทดลองเขียนโปรแกรมสั้น ๆ พื้น ๆ ง่าย ๆ กัน โดยเน้นไปที่การใช้งาน Number ในการเขียนโปรแกรม Lua เมื่อเปิดโปรแกรมแล้วให้ไปที่ Local Console ด้านหล่างนะครับ หน้าต่างล่างแท็บที่สอง จากนั้นพิมพ์คำสั่งง่าย ๆ ลงไป

> print(2+2)
4

            ** นี่จะเป็นรูปแบบการแสดงโค้ดของผมนะครับ หยิบเอามาจากบทเรียนต้นแบบ คือโค้ดที่อยู่หลัง > จะเป็นโค้ดที่พิมพ์ลงไป ส่วนโค้ดในบรรทัดถัดมาจะผลลัพธ์ที่แสดงในหน้า Local Console ครับ เป็นผลที่ได้จากการเขียนโปรแกรมของเราเอง

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

            “เฮ้ย มึงบวกสองกับสองดู”

            เพื่อนอาจจะคิดในใจแต่นิ่งเงียบเพราะเราไม่ได้ระบุให้เพื่อนบอกว่าสองบวกสองได้เท่าไร เราเพียงแต่บอกเพื่อนให้บวกสองกับสอง คอมพิวเตอร์นั้นคำนวณเก่งแต่ไม่ฉลาด เราต้องระบุให้ชัดเจนว่า

            “เฮ้ย มึงบวกสองกับสองแล้วบอกกูว่าได้เท่าไหร่”

            “สองบวกสองก็ได้สี่ไงได้สัด มึงปัญญาอ่อนรึเปล่า”

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

            print() จึงเป็นการบอกต่อคอมพิวเตอร์ให้แสดงผลออกมาบนจอ คำสั่ง print() นี้นอกจากจะแสดงผลบนจอแล้วยังสามารถใส่การคำนวณทั่วไปภายในวงเล็บได้ โดยที่ print() จะนำเอาผลลัพธ์ของการคำนวณออกมาแสดง