การรับค่าตัวเลขใน Scratch ด้วย Ask and Wait และ Repeat พร้อมใบงาน ป.5

ส่งต่อให้เพื่อนอ่าน :

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

ในบทเรียนนี้ นักเรียนจะได้เรียนรู้การใช้คำสั่ง Ask and Wait เพื่อรับค่าตัวเลขจากผู้ใช้ และใช้คำสั่ง Repeat เพื่อให้โปรแกรมทำงานซ้ำตามจำนวนครั้งที่กำหนด เหมาะสำหรับนักเรียนชั้นประถมศึกษาปีที่ 5 ที่กำลังเริ่มเรียนรู้แนวคิดเรื่อง Input และ Loop ในการเขียนโปรแกรม


Input (การรับข้อมูล) คืออะไร

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

ตัวอย่างของ Input ได้แก่

  • พิมพ์ชื่อตนเอง
  • พิมพ์อายุ
  • พิมพ์คะแนน
  • พิมพ์ตัวเลขที่ต้องการ

ใน Scratch เราสามารถรับข้อมูลจากผู้ใช้ได้ด้วยคำสั่ง Ask and Wait

ตัวอย่างเช่น

โปรแกรมถามว่า “กี่รอบดี?”

ผู้ใช้ตอบ

5

โปรแกรมจะนำเลข 5 ไปใช้ในการทำงานต่อ


รู้จักคำสั่ง Ask and Wait

คำสั่ง Ask and Wait อยู่ในหมวด Sensing (การตรวจจับ)

หน้าที่ของคำสั่งนี้ คือ

  • แสดงคำถามบนหน้าจอ
  • รอให้ผู้ใช้พิมพ์คำตอบ
  • เก็บคำตอบไว้ในตัวแปร Answer

ยกตัวอย่าง

โปรแกรมถามว่า

กี่รอบดี?

ผู้ใช้พิมพ์

3

Scratch จะเก็บค่า 3 ไว้ในตัวแปร Answer เพื่อนำไปใช้งานต่อ

Ask ans wait

ตัวแปร Answer คืออะไร

เมื่อผู้ใช้ตอบคำถามแล้ว Scratch จะนำคำตอบไปเก็บไว้ในตัวแปรพิเศษชื่อ Answer

ตัวอย่าง

โปรแกรมถามผู้ใช้ตอบAnswer
กี่รอบดี22
กี่รอบดี55
กี่รอบดี1010

ดังนั้น หากต้องการนำค่าที่ผู้ใช้ป้อนมาใช้งาน ก็สามารถเรียกใช้บล็อก Answer ได้ทันที


คำสั่ง Repeat คืออะไร

คำสั่ง Repeat อยู่ในหมวด Control (การควบคุม)

ใช้สำหรับ

สั่งให้โปรแกรมทำงานซ้ำตามจำนวนครั้งที่กำหนด

ตัวอย่าง

Repeat 3

พูดว่า

“Hello”

ผลลัพธ์ที่ได้คือ

Hello

Hello

Hello

คำสั่ง Repeat ช่วยลดการเขียนคำสั่งซ้ำหลาย ๆ ครั้ง และทำให้โปรแกรมสั้นลง อ่านง่ายขึ้น


การใช้ Answer ร่วมกับ Repeat

นี่คือหัวใจของบทเรียนนี้

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

ตัวอย่างการทำงาน

  1. คลิกธงเขียว
  2. โปรแกรมถามว่า “กี่รอบดี?”
  3. ผู้ใช้พิมพ์ 3
  4. Answer มีค่าเท่ากับ 3
  5. Repeat ทำงาน 3 รอบ

ภายในแต่ละรอบ โปรแกรมจะพูดว่า

“เขียนโปรแกรม”

จากนั้นพูดว่า

“สนุกจัง”

เมื่อครบ 3 รอบ โปรแกรมจึงหยุดทำงาน

การใช้ repeat กับ aks

ตัวอย่างโปรแกรม Scratch

ตัวอย่างโปรแกรมในใบงาน

  • เมื่อคลิกธงเขียว
  • ถามผู้ใช้ว่า “กี่รอบดี?”
  • รับค่าตัวเลข
  • ใช้ Repeat ตามจำนวนที่ผู้ใช้กำหนด
  • พูดว่า “เขียนโปรแกรม” เป็นเวลา 2 วินาที
  • พูดว่า “สนุกจัง” เป็นเวลา 2 วินาที

โปรแกรมนี้แสดงให้เห็นว่า เราสามารถใช้ข้อมูลที่ผู้ใช้ป้อนเข้ามาควบคุมการทำงานของโปรแกรมได้อย่างง่ายดาย

ตัวอย่างโปรแกรม

ตัวอย่างผลลัพธ์ของโปรแกรม

สมมติว่าผู้ใช้พิมพ์

3

โปรแกรมจะทำงานดังนี้

รอบที่ 1

  • เขียนโปรแกรม
  • สนุกจัง

รอบที่ 2

  • เขียนโปรแกรม
  • สนุกจัง

รอบที่ 3

  • เขียนโปรแกรม
  • สนุกจัง

เมื่อครบ 3 รอบ โปรแกรมจะหยุดทันที

หากผู้ใช้พิมพ์ 5 โปรแกรมก็จะทำงานทั้งหมด 5 รอบ

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


ประโยชน์ของการใช้ Ask and Wait และ Repeat

การใช้คำสั่งทั้งสองร่วมกัน ทำให้โปรแกรมมีความสามารถมากขึ้น เช่น

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

ความรู้เรื่องนี้ยังเป็นพื้นฐานสำคัญก่อนเรียนเรื่อง

  • การใช้เงื่อนไข (If)
  • ตัวแปร (Variable)
  • การสร้างเกม
  • การเขียนโปรแกรมที่ซับซ้อนขึ้น

กิจกรรมจากใบงาน

ให้นักเรียนทดลองสร้างโปรแกรมตามเงื่อนไขต่อไปนี้

  1. คลิกธงเขียว
  2. ถามผู้ใช้ว่า “กี่รอบดี?”
  3. รับค่าตัวเลขจากผู้ใช้
  4. ใช้ Repeat ตามจำนวนรอบที่ได้รับ
  5. ให้ตัวละครพูดว่า “เขียนโปรแกรม” เป็นเวลา 2 วินาที
  6. จากนั้นพูดว่า “สนุกจัง” เป็นเวลา 2 วินาที

เมื่อทำเสร็จแล้ว ลองเปลี่ยนข้อความเป็นคำอื่น เช่น

  • สวัสดี
  • Hello
  • Scratch
  • Kruaof.com

แล้วสังเกตผลลัพธ์ที่เกิดขึ้น


สรุปบทเรียน

ในบทเรียนนี้ นักเรียนได้เรียนรู้พื้นฐานสำคัญของการเขียนโปรแกรมด้วย Scratch ได้แก่

  • Ask and Wait ใช้สำหรับรับข้อมูลจากผู้ใช้
  • Answer ใช้เก็บค่าที่ผู้ใช้ป้อน
  • Repeat ใช้สั่งให้โปรแกรมทำงานซ้ำ
  • สามารถนำค่าใน Answer มากำหนดจำนวนรอบของ Repeat ได้
  • การรับข้อมูลจากผู้ใช้ช่วยให้โปรแกรมมีความยืดหยุ่นและโต้ตอบกับผู้ใช้งานได้มากขึ้น

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

ผลลัพธ์ของโปรแกรม
สรุปบทเรียน รับค่า
About ครูออฟ 1973 Articles
https://www.kruaof.com