
บทที่ 4 การโปรแกรมด้วย Scratch
บทที่ 4 การโปรแกรมด้วย Scratch ประกอบด้วยหัวข้อ
4.1 รู้จักกับโปรแกรม Scratch
4.2 การทำงานแบบวนซ้ำ
4.3 ตัวแปร
4.4 การทำงานแบบมีทางเลือก
4.5 คำสั่งวนซ้ำแบบมีเงื่อนไข
จุดประสงค์การเรียนรู้
1. ออกแบบและเขียนโปรแกรมที่ทํางานแบบวนซ้ํา
2. ออกแบบและเขียนโปรแกรมที่มีการใช้งานตัวแปร
3. ออกแบบและเขียนโปรแกรมที่ทํางานแบบมีทางเลือก
4. เขียนโปรแกรมเพื่อแก้ปัญหาทางคณิตศาสตร์หรือวิทยาศาสตร์


หลายคนคงเคยได้ยินเทคโนโลยีรถยนต์ไร้คนขับ (driverless car technology) นักเรียน คิดว่าเหตุใดรถยนต์จึงสามารถเคลื่อนที่ไปถึงปลายทางได้อย่างถูกต้องโดยไม่มีคนขับ การเขียน โปรแกรมมีส่วนในการควบคุมการทํางานของรถยนต์อย่างไร
ทบทวนความรู้ก่อนเรียน

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


ปัจจุบันมีภาษาโปรแกรมจํานวนมาก Scratch เป็นภาษาโปรแกรมที่ง่ายต่อการเรียนรู้การเขียนโปรแกรม มีโครงสร้างคําสั่งที่ไม่ซับซ้อน มีบล็อกคําสั่งให้เลือกใช้งานได้สะดวก และสามารถนําไปใช้สร้างงานที่น่าสนใจได้
ในบทนี้ นักเรียนจะได้ใช้ความรู้พื้นฐานของการโปรแกรมแบบโครงสร้าง ที่ทํางานตามลําดับคําสั่ง อาจมี การเลือกทํางานบางคําสั่งตามเงื่อนไขที่กําหนด หรือวนกลับไปทําคําสั่งที่ทําไปแล้วซ้ําอีก การเขียนโปรแกรม จะต้องใช้ความรู้พื้นฐานทางคณิตศาสตร์และตรรกศาสตร์ และยังอาจใช้ความรู้ในศาสตร์อื่น เช่น วิทยาศาสตร์ เศรษฐศาสตร์ สังคม หรือภาษาไทย
4.1 รู้จักกับโปรแกรม Scratch
โปรแกรม Scratch เป็นโปรแกรมโอเพนซอร์ส (open Source software) พัฒนาโดยนักวิจัยที่ห้อง ปฏิบัติการสื่อ
(MIT Media Lab) สถาบันเทคโนโลยีแมสซาชูเซตส์ ประเทศสหรัฐอเมริกา Scratch ออกแบบมาให้ใช้กับเด็กอายุ 8-16 ปี และเป็นทางเลือกที่ดีในการเขียนโปรแกรมสําหรับผู้เริ่มต้น ในบทนี้ จะแนะนํา Scratch เวอร์ชัน 2.0 ผู้ใช้สามารถเขียนโปรแกรมออนไลน์ หรือดาวน์โหลดโปรแกรมมาใช้ ที่เครื่องคอมพิวเตอร์แบบออฟไลน์ นอกจากนี้ภายในเว็บไซต์ยังมีข้อมูลความรู้เกี่ยวกับคําสั่ง และตัวอย่าง ของโปรแกรม อีกทั้งยังมีแหล่งชุมชนออนไลน์ให้ได้ศึกษาและเรียนรู้การทํางานร่วมกัน โดยสามารถเผยแพร่ ผลงานของตน และสามารถนําโปรแกรมของผู้อื่นที่อัปโหลดไว้มาปรับแก้ได้อีกด้วย
.png)
ชวนคิด

นักเรียนจะเขียนโปรแกรมโดยใช้ Scratch เพื่อสร้างผลงานอะไรได้บ้าง โดยศึกษารายละเอียด
และทดสอบการใช้งานจากตัวอย่างโปรแกรม ได้ที่ https://scratch.mit.edu/

เนื่องจากโปรแกรม Scratch เป็นโปรแกรมภาษาเชิงกราฟิกจึงทําให้ใช้งานง่าย สามารถสร้างสคริป ต์ หรือโปรแกรมที่ประกอบด้วยบล็อกคําสั่งต่าง ๆ เพื่อสั่งให้ตัวละครทํางาน เพียงแค่ลากบล็อกคําสั่งมาวาง ต่อกันเป็นลําดับ โดยไม่ต้องกังวลกับการพิมพ์คําสั่งผิดพลาด หน้าต่างโปรแกรม Scratch ดังรูป 4.1

รูปที่ 4.1 หน้าต่างโปรแกรม Scratch
เริ่มต้นกับโปรแกรม Scratch
ในบทนี้จะแนะนำการใช้งานโปรแกรม Scratch แบบออฟไลน์ที่ต้องติดตั้งไว้ในเครื่องคอมพิวเตอร์ หากนักเรียนยังไม่มีโปรแกรม สามารถทำได้โดยการเข้าไปที่ https://scratch.mit.edu/ แล้วเลือก Offline Editor ซึ่งจะอยู่ในส่วน Support ด้านล่างของเว็บเพจดังรูป 4.2

รูปที่ 4.2 Offline Editor สำหรับ Scratch
หลังจากนั้นจะปรากฎหน้าให้ดาวน์โหลดดังรูปภาพ 4.3

รูปที่ 4.3 หน้าต่างดาวน์โหลด Scratch 3.0 แบบ offline สำหรับระบบปฏิบัติการ windows
ขั้นตอนการติดตั้งโปรแกรมให้ปฏิบัติตามขั้นตอนที่ 1 และขั้นตอนที่ 2 ตามลําดับ
ขั้นตอนที่ 1 ติดตั้งโปรแกรม Adobe AIR โดยคลิก ดาวน์โหลด เลือกให้เหมาะสมกับ ระบบปฏิบัติการที่ใช้ ซึ่งจะได้ไฟล์ AdobeAIRInstaller.exe หลังจากนั้นให้ดับเบิลคลิกไฟล์เพื่อติดตั้งโปรแกรม
ขั้นตอนที่ 2 ติดตั้งโปรแกรม Scratch โดยคลิก ดาวน์โหลด เลือกให้เหมาะสม กับระบบปฏิบัติการที่ใช้ ซึ่งจะได้ไฟล์ Scratch-456.0.4.exe หลังจากนั้นให้ดับเบิลคลิกไฟล์เพื่อติดตั้ง โปรแกรม (ชื่อไฟล์โปรแกรม Scratch อาจแตกต่างกัน เนื่องจาก Scratch จะถูกปรับปรุงให้ทันสมัยอยู่เสมอ)
สําหรับส่วนที่ 3 Support Materials เป็นส่วนของเอกสารให้ความรู้และตัวอย่างโปรแกรม



เกร็ดน่ารู้

นักเรียนสามารถเขียนโปรแกรม Scratch แบบออนไลน์ได้โดยไม่ต้องติดตั้งโปรแกรม Scratch ที่เครื่องคอมพิวเตอร์ แต่เครื่อง คอมพิวเตอร์ที่ใช้ต้องเชื่อมต่ออินเทอร์เน็ต โดยการเขียนโปรแกรมให้เข้าไปที่ https:// Scratch.mit.edu/ แล้วคลิกเลือก Create ที่แถบด้านบนหน้าต่างโปรแกรม

.png)
ขั้นตอนการการสมัครสมาชิก เข้าไปที่เว็บไซต์ https:// Scratch.mit.edu/








สํารวจส่วนประกอบหลักของหน้าต่างโปรแกรม Scratch
หน้าต่างโปรแกรม Scratch ที่ปรากฏจะมีลักษณะคล้ายโปรแกรมอื่นที่มีเมนูให้ใช้งาน และพื้นที่ในการ ทํางาน ซึ่งมีส่วนประกอบหลักในการทํางาน 3 ส่วน คือ เวที ตัวละคร และสคริปต์ ดังรูป 4.4

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


2. ตัวละคร (Sprite) ในโปรแกรม Scratch สามารถกําหนดให้มีตัวละครได้หลายตัว โดยตัวละครแต่ละตัวโดยชุดตัวละคร จะหมายถึง เครื่องแต่งกายและท่าทาง
เกร็ดน่ารู้

การเปลี่ยนชื่อตัวละคร
การเปลี่ยนชื่อตัวละครทำได้โดย คลิกชื่อ Sprite 1 แล้วพิมพ์ชื่อใหม่แทนชื่อเดิม

ชวนคิด
การเพิ่มตัวละครทำได้หลายวิธี มีอะไรบ้างให้ทดลองเพื่อหาคำตอบ


3. สคริปต์ (Script) เป็นพื้นที่ที่ใช้สําหรับเขียนโปรแกรม ดังรูป 4.5 ซึ่งประกอบด้วย
3.1 บล็อกคําสั่งแต่ละบล็อกถูกจัดอยู่ภายในกลุ่มที่ทําหน้าที่ที่เกี่ยวข้องกัน โดยมีทั้งหมด 10 กลุ่ม และถ้าคลิกที่กลุ่มบล็อกใด
ก็จะปรากฏบล็อกคําสั่งภายในกลุ่มนั้น
ชวนคิด
นักเรียนคิดว่ากลุ่มบล็อกแต่ละกลุ่มประกอบด้วยบล็อกคําสั่งท ี่ทํางานแตกต่างกัน
อย่างไร


3.2 พื้นที่เขียนโปรแกรมผู้ใช้สามารถลากบล็อกคําสั่งที่ต้องการมาวางเรียงต่อกันในพื้นที่เขียนโปรแกรม

พื้นที่เขียนโปรแกรม
กลุ่มบล็อกคำสั่ง
บล็อกคำสั่ง
รูปที่ 4.5 ส่วนสคริปต์
ตัวอย่างที่ 4.1 เริ่มต้นกับ Scratch ด้วยการเขียนโปรแกรมให้ตัวละครแมวเดิน
สร้างโปรแกรม Scratch ให้ตัวละครแมวเดิน มีขั้นตอนดังนี้
1) เปิดโปรแกรม Scratch จะปรากฏตัวละคร Sprite1 ที่เป็นรูปแมว
2) คลิกแท็บ Costumes จะปรากฏชุดตัวละคร 2 ชุด คือ Costume1 และ Costume2 ให้สังเกตว่าชุดตัวละครมี
ลักษณะท่าทางการก้าวเดินของแมวที่แตกต่างกัน ดังรูป 4.6

1
2
รูปที่ 4.6 ชุดตัวละคร
3) คลิกแท็บ Script แล้วเขียนโปรแกรม โดยลากบล็อกคําสั่งวางในพื้นที่เขียนโปรแกรมดังนี้


4) รันโปรแกรม โดยคลิกปุ่ม สังเกตผลลัพธ์ที่ได้จะเห็นว่าแมวมีลักษณะคล้ายการเดิน 1 ก้าว ซึ่งเป็นผล
มาจากคําสั่ง move 10 steps หมายถึง สั่งให้ตัวละครเคลื่อนที่ไป 10 หน่วย (การเคลื่อนที่ 1 หน่วย จะเท่ากับ
การขยับไป 1 จุดบนหน้าจอ) และคําสั่ง next Costume หมายถึง เปลี่ยนเป็นชุดตัวละครในลําดับถัดไป
คลิกแท็บ Script แล้วเขียนโปรแกรม โดยลากบล็อกคําสั่งวางในพื้นที่เขียนโปรแกรมดังนี้
5) ปรับสคริปต์ในข้อ 3) โดยเพิ่มบล็อกคําสั่ง forever วางให้ครอบคําสั่ง move 10 steps และ next costumet

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