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

มาสร้างโปรแกรมแรกให้แมวเคลื่อนที่

เขียนโปรแกรมให้แมวเดิน

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

  • เริ่มต้นด้วยโค้ดเมื่อคลิกธงเขียว เพื่อให้เมื่อเรากดธงเขียวตรงส่วนแสดงผล โค้ดที่ตามหลังโค้ดคลิกธงเขียวจะทำงาน
  • ตามด้วยโค้ดวนซ้ำตลอด เพราะเราจะให้แมวเคลื่อนที่ตลอดไปเรื่อยๆ จนกว่าเราจะหยุด
  • ในโค้ดวนซ้ำ เราใช้โค้ด เคลือนที่ 10 ก้าว เพื่อให้แมวเคลื่อนที่
  • จากนั้น ตามด้วยโค้ด เงื่อนไขถ้าแล้ว
  • ในเงื่อนไข ใช้โค้ดแตะ เลือกขอบ
  • ถ้าเงื่อนไขเป็นจริง ใช้โค้ดหัน ใส่ค่า 180 คือ ให้หมุนไปทิศตรงข้าม (จากซ้ายไปขวา หรือขวาไปซ้าย)
  • ลองกดธงเขียวเล่นดู

ปรากฎว่า แมวจะกลับหัวเมื่อเดินจากขวาไปซ้าย (ทิศ = -90 องศา) แก้ไขด้วย

  • เลือกการหมุนเป็นซ้าย/ขวา
  • ลองกดธงเขียวเล่นดูอีกรอบ
  • จะเห็นว่าแมวไม่เดินกลับหัวแล้ว

ตัวแปร

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

วิธีการสร้างตัวแปร ก็ไปที่ โค้ดคำสั่งชุดตัวแปร กดสร้าง ตั้งชื่อ ตัวแปรมีได้ 2 แบบคือ 

  • สำหรับ sprite นี้เท่านั้น ในที่นี่คือแมวตัวนี้เท่านั้นที่สามารถเรียกใช้ตัวแปรนี้ได้
  • สำหรับทุกๆ sprite  หมายถึง ทุกๆ sprite ในโปรแกรมนี้ สามารถเรียกใช้ตัวแปรนี้ได้

โค้ดคำสั่งของตัวแปรมี 2 โค้ดหลักที่ใช้งานกัน คือ

  • โค้ดตั้งค่าตัวแปร คือการ กำหนดค่าตัวแปร
  • โค้ดเปลี่ยนค่าตัวแปรทีละ คือการเปลี่ยนค่าตัวแปรเทียบจากค่าเดิม เช่น โค้ดเปลี่ยนค่าตัวแปรทีละ 2 ถ้าค่าเดิมคือ 3 ค่าใหม่จะได้ 5

เดียวเราเอาตัวแปร มาใช้ในการเขียนโค้ดต่อจาก โปรแกรมแมวเคลื่อนที่ต่อ โดยจะใช้ตัวแปรนับจำนวนการชนขอบของแมว

ใช้ตัวแปรในการเขียนโค้ด

  • เริ่มจากสร้างตัวแปร ชื่อ จำนวนการชนขอบ เลือกสำหรับ Sprite ทั้งหมด
  • ใส่โค้ดเปลี่ยนค่าตัวแปร เลือกตัวแปร จำนวนการชนขอบ ใส่ค่า 1 ตามหลังโค้ดหัน 180 องศา
  • ลองกดธงเขียว จะเห็นว่า จำนวนการชนขอบ จะเพิ่มทุกครั้งที่มีแมวชนขอบ
  • ลองกดปุ่มแดงหยุด แล้วกดธงเขียวอีกรอบ จะเห็นว่า จำนวนการชนขอบ จะนับต่อจาก การกดโปรแกรมรอบก่อน
  • ถ้าเราต้องการให้เริ่มต้นนับใหม่ เราสามารถใช้โค้ด ตั้งค่าตัวแปร จำนวนการชนขอบ ตามหลังโค้ดเมื่อคลิกธงเขียว
  • ลองกดเล่นดูอีกรอบ
  • ลองกดปุ่มแดงหยุด แล้วกดธงเขียวอีกรอบ จะเห็นว่า จำนวนการชนขอบ จะเริ่มนับใหม่จาก 0 แล้ว

การสื่อสารระหว่าง Sprite

การสื่อสารระหว่าง Sprite เราใช้หลักการที่เรียกว่า การกระจายข้อความ และ การรับข้อความ คือเมื่อโค้ดของ sprite แรกทำงานจนเสร็จและต้องการให้โค้ดของ Sprite ที่สองทำงานต่อ  Sprite แรกจะใช้กระจายข้อความ ออกไป ส่วน Sprite ที่สองจะถูกเขียนโปรแกรมให้รอรับข้อความนั้นไว้ เมื่อได้รับก็จะทำงานต่อ

เราจะมาใช้การกระจายข้อความ ในการเขียนโปรแกรมให้แมวเดินกันต่อ โดยเราจะเพิ่ม Sprite ค้างคาว เข้ามาในโปรแกรม โดยค้างคาวจะคอยพูดจำนวนการชนขอบของแมว ทุกครั้งที่แมวเดินชนขอบ 

การสื่อสารระหว่าง sprite ในส่วนของแมว

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

การสื่อสารระหว่าง sprite ในส่วนของค้างคาว

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

เรียนรู้การเขียน Scratch เบื้องต้น

Skillane x คิดกับโค้ด

สอบถามข้อมูลและรายละเอียดเพิ่มเติมได้ทาง เฟสบุ๊ค คิดกับโค้ด

สำหรับมือถือ กดคลิ๊ก

สำหรับคอมพิวเตอร์ กดคลิ๊ก

หรือกดลิ้งด้านล่างเพื่อไปยัง Skillane

ทางทีมงานจะรีบตอบกลับให้เร็วที่สุดครับ ขอบคุณทุกท่านมากครับ

Skillane x คิดกับโค้ด

https://www.skilllane.com/courses/basic-scratch-for-kids

Leave a Reply

Your email address will not be published. Required fields are marked *