
ตัวแปร : ตัวอย่างเพิ่มเติม

อัปเกรดสำหรับเนื้อหาเพิ่มเติม
True or false? There are different sorts of variables.
ดูสิ ฉันตั้งโปรแกรมใหม่ให้หุ่นยนต์แล้วนะ นั่นทำให้มันถามได้ทั้งชื่อของเรา รวมถึงอายุของเราด้วย ดีใช่ไหมล่ะ? ขอดูบ้างสิ สวัสดีมาเรีย อายุ 15 ปี สวัสดีลีน่า อายุ 16 ปี ว้าว! หุ่นยนต์รู้ว่าเราอายุเท่าไหร่ด้วย แล้วหุ่นยนต์จะบอกได้ไหมว่า ใครแก่กว่ากัน? อืม, คงต้องสร้างรหัสขึ้นมาใช้ก่อน มาเรียและลีน่าต้องการสอนหุ่นยนต์ ให้บอกว่าพวกเขาคนไหนอายุมากกว่า มาเริ่มต้นที่การดูรหัสเทียมกัน เราใส่ชื่อของคนแรกลงไปตรงนี้ และบันทึกมันเป็นตัวแปรชื่อ 1 จากนั้นก็ป้อนอายุของบุคคลที่หนึ่ง ลงไปเป็นตัวแปรอายุ 1 และก็ทำแบบเดียวกันกับบุคคลที่สอง นั่นทำให้มีตัวแปรทั้งหมด 4 ตัว มาดูในสมองของหุ่นยนต์กัน และดูตัวแปรพวกนี้ด้วย นี่คือสำนักงานของหุ่นยนต์ แล้วภายในลิ้นชักพวกนี้ มีอะไรบ้างนะ ที่นี่มีชื่อของมาเรียและลีน่าอยู่ด้วย อีกทั้งยังมีการบันทึกอายุเอาไว้ด้วย อะไรที่สามารถเก็บไว้ในลิ้นชัก ที่ติดป้ายไว้ว่า"อายุ1"กันนะ? 15! ทั้งชื่อและอายุของมาเรียล้วนถูกเก็บ ไว้ในลิ้นชักคนละชนิด มันเป็นตัวแปรชนิดต่าง ๆ ชื่อเป็นข้อความ ส่วนอายุเป็นจำนวนเต็ม มันค่อนข้างฉลาดเพราะใช้พื้นที่ น้อยกว่าในการเขียนอายุ มากกว่าจะเขียนชื่อเต็มลงไป ดังนั้นหุ่นยนต์จึงใช้ลิ้นชัก ขนาดเล็กลงสำหรับตัวเลข นอกจากนี้ จำนวนเต็มและข้อความ ก็ค่อนข้างแตกต่างกัน หุ่นยนต์สามารถทำอะไรกับ ข้อมูลพวกนี้ได้หลายอย่าง ตัวอย่างเช่น มันสามารถเปรียบเทียบอายุ ของมาเรียและลีน่า โดยใช้การลบมาช่วย แต่มันทำแบบนั้นกับชื่อทั้งสองไม่ได้นะ ดังนั้นเมื่อเราใช้ตัวแปรในการเขียน โปรแกรม เราจึงได้ประโยชน์ในการแยกประเภท พวกมันให้เป็นคนละชนิด ด้วยลักษณะที่ไม่เหมือนกัน นี่คืออีกหนึ่งลิ้นชัก มันมีเลขทศนิยม และนี่คือลิ้นชักชนิดพิเศษ ที่เป็นลิ้นชักขนาดเล็กมาก ซึ่งบรรจุเฉพาะคำว่าจริงหรือเท็จ งั้นเรามาสอนหุ่นยนต์ให้เปรียบเทียบ อายุของมาเรียและลีน่ากันดีกว่า ในรหัสเทียมเราเขียน"บันทึก" และจากนั้นเป็น "อายุ 1" เพื่อจะบอกหุ่นยนต์ให้ใส่อะไรบางอย่าง ลงไปในลิ้นชักที่มีป้าย "อายุ 1" อยู่ เมื่อเรากำหนดค่าให้กับตัวแปรแล้ว เราก็จะใช้เครื่องหมายเท่ากับ เดี๋ยวนะ, เครื่องหมายเท่ากับหมายความ ว่าอายุ 1 เท่ากับ 15 หรือเปล่านะ? จริงๆ แล้วในทางคณิตศาสตร์ มันหมายความว่า ด้านซ้ายเท่ากับด้านขวา แต่ตอนนี้ เรากำลังเขียนโปรแกรม ดังนั้นเครื่องหมายเท่ากับจึงหมายถึงว่า เรากำลังเพิ่ม-การระบุ- ตัวแปรที่ชื่อ "อายุ 1" มีค่าเท่ากับ 15 เรากำลังเพิ่ม 15 เข้าไปในลิ้นชัก ตอนนี้เราต้องการให้หุ่นยนต์ คำนวณความต่าง ระหว่างอายุของมาเรียและลีน่า จากนั้นเราจึงใช้เครื่องหมายลบ เพื่อให้ได้ความต่าง เราเพิ่มบรรทัดนี้ลงไป ในรหัสเทียม การลบเลขคณิตด้วยเครื่องหมายลบ ก็เหมือนกับในวิชาคณิตศาสตร์นั่นแหล่ะ ไม่ว่าจะเป็นการบวก การคูณ และการหาร ก็ยังคงทำในวิธีที่เราคุ้นเคย แถวสุดท้ายของรหัสเทียม จะแสดงผลลัพธ์ขึ้นมา แผนผังลำดับงานของรหัสเทียมทำให้ เห็นชัดเจนยิ่งขึ้น ใส่ชื่อแรกใน n1 มันดีกว่ามากที่จะใช้ชื่อตัวแปรสั้นๆ เราจะได้ไม่ต้องเขียนอะไรมากมาย ในรหัสของเรา ใส่อายุแรกลงไปในอายุ 1 แล้วใส่ชื่อที่สองลงใน n2 ใส่อายุที่สองในอายุ 2 คำนวณความแตกต่างและเรียกมันว่า "ผลลัพธ์" จากนั้นก็ส่งผลลัพธ์ออกไป มาดูกันว่ามันได้ผลไหม? - ชื่อ? - มาเรีย - อายุ? - 15 ตอนนี้ก็ถึงตาเธอแล้วลีน่า - ชื่อ? - ลีน่า - อายุ? - 16 มาเรียมีอายุมากกว่าลีน่า -1ปี ฮ่าฮ่า ฉันแก่กว่าเธอ ใช่แก่กว่า -1 ปี ฮ่า ฮ่า ฮ่า