รู้จักโปรแกรม Scratch
โปรแกรม Scratch เป็นโปรแกรมที่พัฒนาโดยนักวิจัยจากสถาบันเทคโนโลยีแมสซาชูเซตส์ (MIT Media Lab) ประเทศสหรัฐอเมริกา เป็นโปรแกรมภาษาเชิงกราฟิกซึ่งใช้งานง่าย สร้างสามารถสร้างโปรแกรมเพียงแค่ลากบล็อกคำสั่งต่างๆ ๆ มาวางเป็นลำดับขั้นต่อขั้น เพื่อสั่งให้โปรแกรมทำงาน ทำให้ไม่ต้องกังวลกับการพิมพ์คำสั่งผิดพลาด ซึ่งเป็นโปรแกรมสำหรับผู้เริ่มฝึกเขียนโปรแกรม ปัจจุบันสามารถทำงานแบบออฟไลน์หรือติดตั้งในเครื่องคอมพิวเตอร์ของตนเอง และแบบออนไลน์ ทั้งยังเป็นแหล่งชุมชนออนไลน์ให้ได้ศึกษาเรียนรู้ตัวอย่างโปรแกรมที่ผู้เขียนโปรแกรมคนอื่นทำขึ้น และยังสามารถเผยแพร่ผลงานของเราเอง ให้ผู้อื่นได้ทดลองใช้และปรับแก้ได้อีกด้วย
การใช้โปรแกรม Scratch แบบออนไลน์
ขั้นตอนการสมัครใช้งานโปรแกรม Scratch แบบออนไลน์
3. คลิกเลือก Join Scratch เพื่อสมัครสมาชิก หากเป็นสมาชิกแล้วให้เลือก Sign in
4. กรอกชื่อสำหรับเข้าสู่ระบบ และ password สำหรับเข้าสู่ระบบ
5. เลือกเดือนและปีเกิด เพศ และประเทศ
6. กรอกอีเมล์และยืนยันอีเมล์
7. คลิกเลือก OK Let's Go
8. คลิก Create เพื่อสร้างโปรแกรมด้วย Scratch
9. จะปรากฎหน้าต่างโปรแกรมให้ใช้งานได้
การใช้โปรแกรม Scratch แบบออฟไลน์ หรือติดตั้งในเครื่องคอมพิวเตอร์
ขั้นตอนการติดตั้งโปรแกรม
1. เข้าเว็บไซต์ Scratch เลือนลงมาด้านล่างสุดแล้วเลือก Offline Editor
2. คลิกเลือก Installation
3. คลิกเพื่อโหลดตัวติดตั้ง Adobe AIR
คลิก Download Adobe AIR
รอดาวน์โหลดจนเสร็จแล้วคลิกเพื่อเปิดตัวติดตั้งโปรแกรมดังรูป
คลิกเลือก I Agree เพื่อยอมรับเงื่อนไขโปรแกรม
เมื่อติดตั้งเสร็จแล้วให้คลิก Finish
4. คลิกเพื่อดาวน์โหลดตัวติดตั้ง Scratch
รอจนดาวน์โหลดเสร็จ แล้วคลิกเปิดตัวติดตั้ง Scratch
คลิกเลือก Continues
รอจนโปรแกรมติดตั้งเสร็จ
คลิกเลือก Yes,I'd Like To Help Improve Scratch เพื่อติดตั้งบทเรียนโปรแกรม
สามารถใช้โปรแกรมได้แล้ว
เปลี่ยนภาษาเป็นภาษาไทย
ส่วนประกอบของโปรแกรม Scratch
หมายเลข 1 แถบเมนู (Menu Bar)
หมายเลข 2 เวที (State)
หมายเลข 3 บล็อกในกลุ่มที่เลือก (Block command)
หลายเลข 4 กลุ่มบล็อก (Block command Group)
หมายเลข 5 ข้อมูลของเวที หรือตัวละครที่ถูกเลือก (State or Character Data)
หมายเลข 6 รายการตัวละคร และเวทีที่ใช้ในโปรเจกต์ปัจจุบัน
หมายเลข 7 พื้นที่ทางาน (Work Area)
รายละเอียดของเวที (State)
รายละเอียดตัวละคร
การเพิ่มตัวละครใหม่สามารถทำได้ 3 แบบคือ
เพิ่มตัวละครจากห้องสมุดของโปรแกรม
วาดตัวละครใหม่
อัพโหลดไฟล์จากคอมพิวเตอร์
ตัวละครใหม่จากกล้อง
ห้องสมุดตัวละครของโปรแกรม Scratch เป็นที่จัดเก็บตัวละครที่โปรแกรมมีมาให้ นักเรียนสามารถคลิกเลือกตัวละครที่ต้องการ แล้วเลือกปุ่ม "ตกลง"
เมื่อเพิ่มตัวละครแล้ว สามารถขยับตัวละครไปไว้ในตำหน่งที่กำหนดได้โดยคลิกเมาส์ค้างแล้วลากไปวางในตำแหน่งที่ต้องการในเวที (State)
เมนูจัดการกับตัวละคร
การกำหนดลักษณะและลักษณะการเคลื่อนไหวของตัวละคร สามารถทำได้โดยการคลิกที่แท็ป "คอสตูม" สามารถเพิ่มคอสตูม แก้ไข และนำเข้าคอสตูมได้
การทำให้ตัวละครเคลื่อนไหว (การเดินวนซ้ำ)
ตัวละครตัวที่ 1 ให้นักเรียนทดลองวางบล็อกคำสั่ง ตามรูปแบบแล้วลองรันโปรแกรม เพื่อดูความแตกต่าง แล้วร่วมกันอธิบายความหมายของคำสั่ง
สรุปความหมายของคำสั่งในหัวข้อนี้
คำสั่งเมื่อธงเขียวถูกคลิก หมายถึง เมื่อคลิกรันโปรแกรมให้เริ่มทำคำสั่งต่อไป
คำสั่งทำซ้ำ (10) หมายถึง ทำซ้ำคำสั่งใน Loop 10 ครั้ง สามารถกำหนดค่าการทำซ้ำได้
ชุดถัดไป หมายถึง แสดง คอสตูมถัดไป
คำสั่งเคลื่อน (10) ก้าว หมายถึง เคลื่อนที่ไปข้างหน้า (ทางขวา) 10 pixle สามารถกำหนดค่าการเคลื่อนที่ได้
คำสั่งวนซ้ำตลอด หมายถึง ทำซ้ำคำสั่งใน Loop ตลอด
คำสั่งรอ(...) วินาที หมายถึง หยุดรอก่อนทำคำสั่งถัดไป สามารถกำหนดวินาทีได้
คำสั่งถ้าชนขอบให้สะท้อนกลับ หมายถึง เมื่อตัวละครไปชนกับขอบให้เดินย้อนกลับ
การเลือกรูปแบบการหมุนมีสามแบบ ให้เลือก ให้เลือกแบบที่สองเพื่อให้ตัวละครไม่กลับหัว
การคัดลอกบล็อกคำสั่ง เราสามารถคัดลอกคำสั่งจากตัวละครหนึ่งไปยังอีกตัวละครหนึ่งได้ โดยการคลิกเมาส์ซ้ายค้างที่บล็อกคำสั่งแล้วลากไปวางที่ตัวละครที่ต้องการ
คำสั่งในการสนทนา
ให้นักเรียนทดลองบล็อกคำสั่งต่อไปนี้แล้วรันโปรแกรมดูความแตกต่าง แล้วร่วมกันอธิบายความหมายของคำสั่ง
1. เพิ่มตัวละครใหม่
2. เลือกคอสตูมตัวละครใหม่
3. ใช้คำสั่งหมุน หรือ พลิก ให้ตัวละครหันหน้าเข้าหากัน
เพิ่มคำสั่งบทสนทนาให้กับตัวละคร 1
เพิ่มคำสั่งบทสนทนาให้กับตัวละคร 2
เพิ่มคำสั่งสลับลักษณะท่าทางของตัวละคร 2
สรุปคำสั่ง ในการสนทนา
ตัวละครที่ 1 คำสั่งเมื่อธงเขียวถูกคลิก หมายถึง เมื่อคลิกรันโปรแกรม ให้ทำตามคำสั่งถัดไป
ตัวละครที่ 1 พูดคำว่า "สวัสดีครับ" เป็นเวลา 2 วินาที
ตัวละครที่ 1 ส่งกระจายค่า 1 แล้วรอ 2 วินาที
ตัวละครที่ 2 รับค่า 1 ให้ทำตามคำสั่งถัดไป
ตัวละครที่ 2 สลับท่าทาง แล้วพูด "สวัสดีครับ" เป็นเวลา 2 วินาที
ตัวละครที่ 1 พูดว่า "ผมชื่อไทเรนโนซอรัส คุณชื่ออะไรครับ" เป็นเวลา 2 วินาที
ตัวละครที่ 1 ส่งกระจายค่า 2 แล้วรอ 2 วินาที
ตัวละครที่ 2 รับค่า 2 แล้วพูด "ผมชื่อแร็พเตอร์ครับ เป็นเวลา 2 วินาที
ตัวละครที่ 1พูดว่า "ผมจะพาคุณไปเที่ยว เป็นเวลา 2 วินาที
ตัวละครที่ 1 ส่งกระจายค่า 3 แล้วรอ 2 วินาที
ตัวละครที่ 2 รับค่า 3 แล้วพูด "ไปกันเลย" เป็นเวลา 2 วินาที
การเพิ่มฉาก
ให้นักเรียนทดลองเพิ่มฉากและบล็อกคำสั่งต่อไปนี้แล้วรันโปรแกรมดูความแตกต่าง แล้วร่วมกันอธิบายความหมายของคำสั่ง
1. คลิกเลือกเมนูฉาก
2. คลิกเลือกเปิดเพื่อเลือกฉากหลังจากคลัง
3. จะปรากฎหน้าต่างคลังฉากหลังให้เลือกฉากหลังตามต้องการ
4. เลือกฉากที่ต้องการ แล้วลบฉากหลังสีขาวออกไป
5. เลือกฉากที่ต้องการให้แสดงเป็นฉากแรก
การใส่สคริปต์ให้ฉากหลัง
ให้นักเรียนเพิ่มบล็อกคำสั่งให้ฉากหลัง ทดสอบรันโปรแกรม แล้วร่วมกันอธิบายความหมายของบล็อกคำสั่ง
6. เพิ่มบล็อกคำสั่งในส่วนของตัวละคร 1
เพิ่มบล็อกคำสั่งในส่วนของฉาก
ตัวละครที่ 2เพิ่มบล็อกคำสั่งต่อไปนี้
สรุปคำสั่ง การเปลี่ยนฉากหลัง
ตัวละครที่ 1 ส่งกระจาย 4 แล้วพูด "ที่นี่คือทะเลทราย" เป็นเวลา 2 วินาที
ฉาก เมื่อธงเขียวถูกคลิก เปลี่ยนฉากหลังเป็น blue sky
ฉาก เมื่อรับค่าส่งกระจาย 4 เปลี่ยนฉากหลังเป็น desert
ตัวละครสลับชุดเป็น dinosaur1-a แล้วพูด "แห้งแล้งจังเลย" เป็นเวลา 2 วินาที
ตัวละครที่ 1 ส่งกระจาย 5 แล้วพูด "ที่นี่คือทะเลสาบ" เป็นเวลา 2 วินาที
ฉาก เมื่อรับค่าส่งกระจาย 5 เปลี่ยนฉากหลังเป็น boardwalk
ตัวละครที่ 2 สลับชุดเป็น dinosaur1-e แล้วพูด "สวยจังเลย" เป็นเวลา 2 วินาที
ตัวละครที่ 1 ส่งกระจาย 6 แล้วพูด "ที่นี่คือเมือง" เป็นเวลา 2 วินาที
ฉาก เมื่อรับค่าส่งกระจาย 6 เปลี่ยนฉากหลังเป็น night city walk street
ตัวละครที่ 2 พูด "มืดจังเลย" เป็นเวลา 2 วินาที
การทำให้ตัวละครเล่นเสียง
ตัวละครบางตัวจะมีเสียงมาให้อยู่แล้ว เราสามารถสั่งให้ตัวละครเล่นเสียงตามเงื่อนไขที่ต้องการได้ ให้นักเรียนทดลองวางบล็อกคำสั่งต่อไปนี้แล้วรันโปรแกรม จากนั้นร่วมกันอธิบายความหมายของแต่ละบล็อกคำสั่งว่ามีลักษณะการทำงานอย่างไร
เพิ่มตัวละครเครื่องดนตรีและฉากหลังที่ต้องการ (เพิ่มเครื่องดนตรีที่นักเรียนชอบ)
ใส่คำสั่งการเล่นแบบวนซ้ำให้ตัวละคร Drum-Conga
ใส่คำสั่งให้กับ ตัวละคร Saxophone
ใส่คำสั่งให้กับ ตัวละคร Ukalele
อธิบายคำสั่ง
ตัวละคร Drum-Conga
เมื่อคีย์ "สเปซบาร์" ถูกกด หมายถึง เมื่อปุ่ม กดสเปซบาร์ที่แป้นพิมพ์
ทำทำซ้ำคำสั่งต่อไปนี้ 4 ครั้ง
เปลี่ยนแอฟเฟคของสีทีละ 25
เล่นเสียง high conga แล้วอ 0.125 วินาที
เล่นเสียง low conga แล้วรอ รอ 0.125 วินาที
อธิบายคำสั่ง
ตัวละคร Saxophone คำสั่งที่ 1 คีย์ลูกศรขึ้น
เมื่อคีย์ "ลูกศรขึ้น" ถูกกด
เปลี่ยนแอฟเฟคของสี ทีละ 25
เล่นเสียง C2 sax แล้วรอ 0.25 วินาที
เล่นเสียง G sax แล้วรอ 0.25 วินาที
เล่นเสียง E sax แล้วรอ 0.25 วินาที
อธิบายคำสั่ง
ตัวละคร Saxophone คำสั่งที่ 1 คีย์ลูกศรลง
เมื่อคีย์ "ลูกศรลง" ถูกกด
เปลี่ยนแอฟเฟคของสี ทีละ 25
เล่นเสียง C major Ukalele แล้วรอ 0.25 วินาที
เล่นเสียง A minor Ukalele แล้วรอ 0.25 วินาที
เล่นเสียง F major Ukalele
อธิบายคำสั่ง
ตัวละคร Saxophone คำสั่งที่ 3 คีย์ลูกศรขวา
เมื่อคีย์ "ลูกศรขวา" ถูกกด
เล่นเสียง โดยเลือกสุ่มจากเสียงของตัวละคร จาก 1-8
เปลี่ยนแอฟเฟคของสี ทีละ 25
อธิบายคำสั่ง
ตัวละคร Ukalele คำสั่งที่ 1 คีย์ 1
เมื่อคีย์ "1" ถูกกด
เปลี่ยนแอฟเฟคของสี ทีละ 25
เล่นเสียง F sax แล้วรอ 0.25 วินาที
เล่นเสียง A sax แล้วรอ 0.25 วินาที
เล่นเสียง C2 sax
อธิบายคำสั่ง
ตัวละคร Ukalele คำสั่งที่ 1 คีย์ 2
เมื่อคีย์ "2" ถูกกด
เล่นเสียง โดยเลือกสุ่มจากเสียงของตัวละคร จาก 1-8
เปลี่ยนแอฟเฟคของสี ทีละ 25
เรียนรู้บล็อกคำสั่งรับข้อมูลและโอเปอร์เรเตอร์
ให้นักเรียนทดลองใช้บล็อกคำสั่งต่อไปนี้ แล้วร่วมกันอธิบายความหมายของแต่ละบล็อกคำสั่ง
อธิบายคำสั่ง
เมื่อธงเขียวถูกคลิก ให้ทำคำสั่งถัดไป
ถามคำถาม "กรอกค่าความกว้าง และให้ผู้ใช้ กรอกค่าความกว้างของ 4 เหลี่ยม
กำหนดตัวแปร a ให้เก็บค่าคำตอบ1
ถามคำถาม "กรอกค่าความยาว และให้ผู้ใช้ กรอกค่าความกว้างของ 4 เหลี่ยม
กำหนดตัวแปร b ให้เก็บค่าคำตอบ2
กำหนดตัวแปร c=a*b
พูด "พื้นที่ของนี่เหลี่ยมนี้เท่ากับ เป็นเวลา 2 วินาที
พูด แสดงค่าตัวแปร c เป็นเวลา 2 วินาที
พูด "ตารางหน่วย เป็นเวลา 2 วินาที
แบบฝึกหัด
ให้นักเรียนสร้างโปรแกรมหาค่าร้อยละของจำนวนที่ผู้ใช้กรอก
ให้นักเรียนสร้างโปรแกรมคำนวณค่าเฉลี่ยของคะแนน 5 วิชา
ให้นักเรียนสร้างโปรแกรมหาค่าสมการต่อไปนี้ x=100+(70*100)+(529+222)
เกมเก็บลูกแอปเปิ้ล
ให้นักเรียน ทำตามขั้นตอน และใช้บล็อกคำสั่งต่อไปนี้ในการสร้างเกมเก็บของ โดยรันคำสั่งในแต่ละรูป ดูความแตกต่าง แล้วร่วมกันอธิบายความหมายของบล็อกคำสั่งแต่ละคำสั่ง
ลบตัวละครเก่า แล้วเพิ่มตัวละครใหม่ เป็แอปเปิ้ล หรือลูกบอล
เพิ่มฉากหลังและลบฉากหลังสีขาวออกไป
เพิ่มคำสั่งให้กับตัวละคร 1 (ทำให้แอปเปิ้ลไปอยู่ด้านบนและซุ่มตำแหน่ง)
เมื่อธงเขียวถูกคลิก ให้ทำคำสั่งถัดไป
ไปยังตำแหน่งโดยให้โปรแกรมซุ่มตำแหน่งให้
ตั้งค่าตำแหน่ง y เป็น 180
หมายความว่า ให้ซุ่มตำแหน่งที่แอปเปิ้ลจะตก แล้วตั้งให้อยู่ด้านบน คือค่า Y 180 นั้นเอง
เพิ่มคำสั่งให้กับตัวละคร 1 (ทำให้แอปเปิ้ลตกลงมา)
เพิ่มคำสั่งวนซ้ำตลอด
เปลี่ยนตำแหน่ง y ทีละ -5
หมายความว่า ให้ ลูกแอปเปิ้ลตกลงมาจากที่สูง จากตำแหน่งที่ 180 นั้นเอง
เพิ่มคำสั่งให้กับตัวละคร 1 (ถ้าแอปเปิ้ลตกถึงพื้นให้เริ่มใหม่)
เพิ่มคำสั่งเงื่อนไข ถ้า ตำแหน่ง y น้อยกว่า -170 หมายถึง แอปเปิ้ลตกถึงพื้น
ให้กลับไปซุ่มตำแหน่งใหม่ โดยแอปเปิ้ลต้องอยู่ด้านบน y=180 นั้นเอง
กลับไปวนซ้ำตลอด
สร้างตัวละครใหม่ ตามต้องการ
เพิ่มคำสั่งให้กับตัวละคร 2 (บังคับตัวละคร)
เมื่อธงเขียวถูกคลิก ให้ทำคำสั่งถัดไป
วนซ้ำตลอด
ถ้า กดลูกศรขวา ให้เปลี่ยน x ทีละ 10 นั้นก็คือให้เลื่อนไปทางขวาครั้งละ 10 หน่วย
ถ้า กดลูกศรซ้าย ให้เปลี่ยน x ทีละ -10 นั้นก็คือให้เลื่อนไปทางซ้ายครั้งละ 10 หน่วย
เพิ่มคำสั่งให้กับตัวละคร 2 (เมื่อสัมผัสถูกแอปเปิ้ล)
วนซ้ำตลอด
ถ้า สัมผัสกับ bowl (ตัวละครที่ 2)
แล้ว เล่นเสียง pop
แล้วไปยังตำแหน่งซุ่ม
แล้วตั้งค่า y เป็น 180
สร้างตัวแปร score
เพิ่มคำสั่งให้กับตัวละคร 1(คะแนน)
กำหนดตัวแปร score เป็น 0
เปลี่ยน
คลิกขวา เลือกทำซ้ำเพื่อเพิ่มจำนวนแอปเปิ้ลที่ตกลงมา
เสร็จแล้ว เริ่มเล่นเกมได้
เกมพินบอลกันเถอะ
ให้นักเรียน ทำตามขั้นตอน และใช้บล็อกคำสั่งต่อไปนี้ในการสร้างเกมพินบอล โดยรันคำสั่งในแต่ละรูป ดูความแตกต่าง แล้วร่วมกันอธิบายความหมายของบล็อกคำสั่งแต่ละคำสั่ง
เปลี่ยนฉากหลัง และลบตัวละครเก่าออกไป
นำเข้าตัวละคร ball
กำหนดบล็อกคำสั่ง การเคลื่อนไหวของ ball
นำเข้าตัวละคร 2 paddle
กำหนดการเคลื่อนไหวให้กับ paddle เมื่อขยับเม้าส์
เมื่อ ball สำผัสกับ paddle ให้หมุนกลับ
เพิ่มเสียง water drop
เพิ่มเส้นที่ฉาก
กำหนดให้ เมื่อ ball ชนเส้นแล้วให้หยุดเกม
เปลี่ยนสีบอล
กำหนดให้เมื่อเริ่มเกมให้บอลไปอยู่ที่ตำแหน่ง x=20 y=150 ชี้ไปทิศทางที่ 45 องศา แล้ววนซ้ำการเคลื่อนที่ เมื่อชนขอบให้เด้งกลับ
สร้างตัวแปร score เพื่อเก็บข้อมูลคะแนน
กำหนดคะแนนเริ่มที่ 0 และเพิ่มขึ้นทีละ 1 แต้ม และเล่นเสียง เมื่อสัมผัสบอล
เกมจับผี
ให้นักเรียน ทำตามขั้นตอน และใช้บล็อกคำสั่งต่อไปนี้ในการสร้างเกมจับผีโดยรันคำสั่งในแต่ละรูป ดูความแตกต่าง แล้วร่วมกันอธิบายความหมายของบล็อกคำสั่งแต่ละคำสั่ง
นำเข้าฉากและตัวละคร Ghost
กำหนดให้ ghost แสดงและซ่อน
กำหนดให้ ghost แสดงและซ่อน แบบ ซุ่ม
เมื่อคลิกที่ ghost เล่นเสียง pop และแสดงข้อความว่า "คุณจับฉันได้แล้ว"
สร้างตัวแปร score เพื่อเก็บข้อมูลคะแนน
กำหนดให้เมื่อเริ่มเกม คะแนน เท่ากับ 0 และเพิ่มคะแนน 1 แต้ม เมื่อคลิกโดน ghost