สารบัญ หน้า หัวข้อ 1 1 เก่ียวกบั Scratch 26 ส่วนประกอบของ Scratch 38 การกาหนดคาส่งั ให้กบั เหตกุ ารณ์ 54 การกาหนดตวั แปรและการคานวณ 72 การสรา้ งเงอื่ นไขและการวนซา การออกแบบและสรา้ งโปรแกรม 0
เกย่ี วกับ Scratch Scratch ทาใหเ้ ราสามารเเขียนโปรแกรมที่สามารเตอบโต้ไดใ้ นหลายรปแบบทงั การ สรา้ งเรอ่ื งราว เกม การทาภาพเคลื่อนไหว และอืน่ ๆ อีกมากมาย ผ่านลงิ กน์ ี http://scratch.mit.edu และสามารเแชร์สงิ่ ท่เี ราสร้างขนึ มากบั เพอ่ื น ๆ ในสงั คมออนไลน์ของ เราได้ Scratch ทาให้เราไดค้ ดิ อยา่ งสร้างสรรค์ มเี หตผุ ล เป็นระบบ และสามารเทางาน ร่วมกนั ได้ดขี นึ ซ่งึ เปน็ ทักษะท่คี วรจะมใี นศตวรรษที่ 21 Scratch เปน็ โครงการของ Lifelong Kindergarten Group ที่ MIT Media Lab ซึ่ง เปดิ ใหค้ นท่ัวไปใชไ้ ดโ้ ดยไมเ่ สียค่าใช้จา่ ย สว่ นประกอบของ Scratch 1 24 6 5 3 1. Menu Bar แเบเมนด้านบนสดุ ของหนา้ ต่าง Scratch ประกอบไปด้วย สาหรบั เปลย่ี นภาษา โดยโปรแกรม Scratch มภี าษาไทย ให้เลือกได้ ด้วย 1
เมน File ประกอบไปด้วยเคร่ืองมือยอ่ ย - “New” ใช้สาหรบั สรา้ งไฟล์ Scratch ใหม่ - “Upload from your computer” สาหรบั อัพโหลด Scratch จาก คอมพิวเตอรข์ องเรา - “Download to your computer” สาหรับดาวน์โหลด Scratch ลง เครือ่ งของตัวเอง - “Revert” สาหรบั ยอ้ นไฟลป์ จั จบุ ันไปทจ่ี ดุ เรมิ่ ต้น เมน Edit ประกอบด้วยเครอื่ งมือยอ่ ย - “Undelete” ใชส้ าหรบั การนาสิ่งท่เี พิ่งลบไปกลับมา คล้าย ๆ คาส่ัง Undo - “Small stage layout” ใชส้ าหรับการย่อหน้าตา่ ง Stage ให้เล็กลง เพือ่ ทาให้หนา้ ตา่ ง Script Area ใหญ่ขึน เหน็ Block ทเี่ ราสรา้ งได้กวา้ ง ขึน ซึ่งเราสามารเเลือกทีเ่ ครอ่ื งมือนีอีกครังเพือ่ ทาใหห้ นา้ ตา่ ง Stage กลับมามขี นาดเท่าเดิม 2
- “Turbo mode” ใช้สาหรบั การแสดงผลโปรแกรมเร็วขึน จากการลด ระยะเวลาหน่วงระหวา่ ง Block ลง เราสามารเทาใหก้ ลบั ส่โหมดปกติ โดยกดทีป่ มุ่ นเี หมอื นเดมิ ใชส้ าหรบั เรยี กดหนา้ จอทางดา้ นขวา สาหรบั เรยี นร้วธิ ีการใช้ Scratch ด้วยตนเอง step-by-step ใช้สาหรับไปทห่ี น้าจอ about ของ Scratch (https://scratch.mit.edu/about/) 2. Stage เวทีสาหรบั การจัดวางตัวละคร และแสดงพนื หลงั ขณะท่ีโปรแกรมทางานจะ แสดงผลตรงหนา้ ต่างนี โดย ปุ่มธงเขยี ว ใช้สาหรบั การเรม่ิ โปรแกรม และ ปุ่ม 8 เหลยี่ มสแี ดง ใชส้ าหรบั หยดุ โปรแกรม 3. Sprite List เป็นสว่ นสาหรบั การเกบ็ ตวั ละคร ชินสว่ นตา่ ง ๆ ในโปรแกรมของเรา โดยเราสามารเ เลอื กเพิม่ ตัวละครและชินสว่ นตา่ ง ๆ รวมเงึ ฉากหลงั ได้จากสว่ นนี 4 1 3 2 3
1. สว่ นสาหรบั การแสดงฉากหลงั ปจั จบุ นั การเพิ่มฉากหลงั และการ set ฉากหลงั ใหม่ 2. สว่ นนีเราสามารเเพม่ิ ฉากหลงั ใหม่ได้ 4 วธิ ี ไดแ้ ก่ การเลอื กจากรปท่มี มี าให้จาก โปรแกรม การวาดเองโดยโปรแกรมการวาดสาเรจ็ รปทมี่ ีให้ การเลือกจากรปใน เครอ่ื งของเรา และการเา่ ยรปผา่ นกล้องทนั ที 3. ส่วนตวั ละครและชินสว่ นต่าง ๆ ของโปรแกรมท่เี กเพม่ิ เขา้ มาจะมาอย่ตรงสว่ นนี 4. สว่ นเพม่ิ ตัวละครใหม่สามารเทาได้ 4 วิธี ได้แก่ การเลือกตวั ละครจากท่ีมีอย่ใน โปรแกรม การวาดเองโดยใชโ้ ปรแกรมสาเร็จรปทมี่ ใี ห้ การเลอื กตัวละครจากภาพใน เคร่ืองของเรา และการเ่ายภาพตวั ละครผา่ นกลอ้ งเราทนั ที 4
4. Blocks Palette เป็นส่วนของคาส่งั ทีเ่ ราจะนาไปประกอบกันเปน็ โปรแกรมแบง่ ออกเปน็ หมวดหม่ตา่ ง ๆ ตามประเภทการใชง้ าน ประกอบดว้ ย 2 สว่ นใหญ่ ๆ คอื สว่ นหมวดหมด่ า้ นบน และ สว่ นตวั คาส่งั ดา้ นลา่ ง สว่ นด้านบน แบ่งออกเปน็ 3 เมน ได้แก่ 5
1. สคริปต์ ใชเ้ ลอื กหาคาสง่ั เพอ่ื นามาตอ่ กันเปน็ โปรแกรม แบ่งออกเปน็ 10 หมวด ดว้ ยกนั แตล่ ะหมวดกจ็ ะมี Block คาส่ัง การกระทาท่ีแตกตา่ งกนั ดงั นี 1. หมวดการเคล่ือนท่ี เราสามารเทาใหต้ ัวละครเคลือ่ นไหวไดต้ ามทเ่ี ราต้องการ ประกอบไปดว้ ย การเคลอ่ื นไหวไปตามปรมิ าณท่กี าหนด การเคลือ่ นทีไ่ ปตามทิศทางท่ีกาหนด การเคลือ่ นท่ีไปท่ีตาแหน่งที่กาหนด ตาม ระยะเวลาท่ีกาหนด การเคล่ือนทไ่ี ปตามแนวแกนตามปริมาณท่ี กาหนด หรอื ตงั ค่าเรม่ิ ตน้ ตามแกน สะทอ้ นทศิ ทางการเคลอื่ นท่ีไปด้านตรงขา้ มเมื่อชนขอบ กาหนดคา่ การหมนุ เมอ่ื เกิดการสะทอ้ นกลับ 6
คา่ ตาแหน่งและทศิ ทางปัจจบุ ัน ใชใ้ ส่เป็นคา่ แทนค่าท่เี รากาหนด ในช่องสีขาวได้ 2. หมวดการรปรา่ ง เราสามารเเปลี่ยนแปลงตวั ละครและฉากใหเ้ หมาะกับสเานการณ์ ได้ ประกอบดว้ ย ให้ตัวละครพดหรอื คดิ ตามข้อความทเี่ รากาหนดเปน็ ปริมาณตามทีเ่ ราตอ้ งการ กาหนดให้ซ่อนหรอื แสดงตัวละคร กาหนดให้ Costume ของตวั ละครหรอื ฉากหลังเปลีย่ นไป เปน็ ตามที่เรากาหนด กาหนดคา่ เอฟเฟกตส์ ีให้กบั ตวั ละคร กาหนดคา่ ขนาดให้กบั ตวั ละคร 7
กาหนดคา่ ตาแหนง่ ชันการซอ้ นทบั ให้กบั ตวั ละคร เรียกดคา่ ลาดบั ของชุด costumes ของตัวละคร ช่ือฉากหลัง หรอื ขนาดของตัวละครเปน็ เปอรเ์ ซ็นต์ 3. หมวดเสียง ทาให้เราเลน่ เสยี งได้ตามประเภทและจงั หวะทีเ่ ราตอ้ งการ ประกอบดว้ ย ใช้เลน่ เสียงตามท่เี ลอื กและหยุดเสียงตามที่ต้องการ เลน่ เสยี งตามท่เี ลอื ก เปน็ ระยะเวลาตามต้องการ และเลือก หยุดไดเ้ ป็นปรมิ าณเวลา เลือกโนต้ เลือกระยะเวลาเลน่ และเลอื กเสียงเครื่องดนตรีที่ ตอ้ งการ เลือกปรับ ตงั คา่ ระดบั เสยี งตามหน่วยท่ตี ้องการ และ สามารเดงึ คา่ ระดบั เสยี งมาใชไ้ ด้ เลอื กปรบั ตังคา่ ระดบั ความเร็วเสยี งตามหนว่ ยทีต่ อ้ งการ และสามารเดึงคา่ ระดบั ความเรว็ เสยี งมาใชไ้ ด้ 8
4. หมวดปากกา สามารเวาดเส้นตามการเคลอ่ื นทข่ี องตัวละคร ประกอบด้วย ลา้ งหมกึ ปากกาทีเ่ ขยี นไวท้ ังหมด คดั ลอกตวั ละครแปะไปทต่ี าแหน่งปจั จบุ นั กาหนดการเริม่ และการหยดุ วาดเส้น ตงั คา่ สีของปากกา กาหนดคา่ ความเขม้ ของสปี ากกา กาหนดขนาดของหัวปากกาที่จะใชเ้ ขยี น 9
5. หมวดขอ้ มล มกี ารเก็บข้อมลและการเรียกใชข้ ้อมล มี 2 รปแบบ ประกอบด้วย 1. การสรา้ งตวั แปร คือตวั เกบ็ คา่ ท่เี ราสามารเเรยี กมาใชไ้ ด้ตลอด สมมุติเรา สรา้ งตัวแปรชอ่ื x เลือกใหต้ ัวแปรใหป้ รากฏอย่ในหนา้ จอหรือไม่ กาหนดคา่ ใหต้ วั แปร เปล่ยี นค่าใหต้ ัวแปรตามปรมิ าณทกี่ าหนด ทาการแสดงตัวแปรบนหน้าจอ (โปรแกรมเขยี นผดิ ) ทาการซ่อนตัวแปรออกจากหน้าจอ 10
2. การสร้างรายการ ใชส้ าหรบั การต้องการเกบ็ คา่ หลาย ๆ ค่าเปน็ ลาดบั สมมุติใหช้ อื่ รายการ L ให้รายการปรากฏอยบ่ นหน้าจอหรือไม่ เพิ่มค่าเขา้ ไปในรายการ ลบคา่ ในลาดับท่กี าหนดออกจากรายการ แทรกคา่ เข้าไปตาแหน่งทีก่ าหนดในรายการ แทนทต่ี าแหนง่ ทกี่ าหนดดว้ ยคา่ ทตี่ อ้ งการ เรยี กดคา่ ต่าง ๆ ของรายการ หรอื ตรวจสอบว่า รายการประกอบดว้ ยคา่ ที่กาหนดหรือไม่ แสดงรายการบนหนา้ จอ ซ่อนรายการออกจากหน้าจอ (โปรแกรมเขยี นผดิ ) 11
6. หมวดเหตุการณ์ เป็นหมวดทเี่ ก่ียวขอ้ งกบั การกระทาเมอื่ มเี หตกุ ารณต์ ามที่ กาหนด ประกอบดว้ ย เมอื่ ผ้เล่นคลิกท่ธี งเขียวจะทาตามคาสง่ั ที่กาหนด เมอ่ื ผ้เล่นกดปมุ่ ทเี่ ราตงั ไวจ้ ะทาตามคาสัง่ ทก่ี าหนด เมื่อผเ้ ลน่ คลกิ ทตี่ วั ละครจะทาตามคาส่ังท่ีกาหนด เมือ่ ฉากหลังเปลีย่ นเป็นฉากท่ีตงั ไว้จะทาตามคาสง่ั ที่ กาหนด เมอื่ ระดบั ความดังของเสยี ง จับเวลา หรือ วดิ ีโอมากกวา่ ท่ี เราตังไวจ้ ะทาตามคาส่ังทก่ี าหนด เป็นการสั่งงานแบบกระจายและรบั ข้อความแบบลบั ๆ ให้ ตัวละครสามารเสง่ ซกิ กันไดต้ ามเรากาหนด 12
7. หมวดควบคมุ ชว่ ยกาหนดการไหลของคาสงั่ ให้ทาคาสงั่ ใดตอนไหน ทาซา หรือ ไมท่ าเม่ือไหร่ ประกอบด้วย รอตามระยะเวลาทีก่ าหนด ทาคาส่ังภายใน Block วนตามจานวนรอบทกี่ าหนด ทาคาสั่งภายใน Block วนไปเรื่อย ๆ จนโปรแกรมหยดุ ทาคาสั่งภายใน Block เ้าเงือ่ นไขใน กลอ่ งหกเหล่ยี มเปน็ จริง เา้ เงอ่ื นไขในกลอ่ งหกเหลยี่ มเปน็ จรงิ ใหท้ าคาส่ังหลงั ” แลว้ ” เ้าเปน็ เทจ็ ใหท้ าคาสงั่ หลัง ”มฉิ ะนัน” จะทาคาส่งั หลังจากรอจนกระทงั่ เง่อื นไขในกลอ่ งหกเหลี่ยม เป็นจริง ทาคาสั่งภายใน Block วนไปเรอื่ ย ๆ จนกระทัง่ เงื่อนไขในกลอ่ ง หกเหลย่ี มเปน็ จรงิ เลอื กใหห้ ยดุ การกระทา ทงั หมด หรอื ชดุ สครปิ ต์นี หรอื ชุด สคริปต์อืน่ ของตวั ละคร เปน็ ชดุ คาส่ังเก่ียวกับการโคลนตวั ละคร สามารเตงั คา่ เม่ือ เกดิ การโคลนตัวละครตัวนใี หม่ สามารเสรา้ งตวั ละครโคลน ตวั ใดกไ็ ด้ และสามารเลบตวั ละครตัวปจั จบุ ันได้ 13
8. หมวดกาลงั รบั ร้ คาสง่ั ในหมวดนจี ะเปน็ เงอ่ื นไขและค่าแสดงการรบั รต้ ่าง ๆ ของ ตัวละคร ประกอบด้วย เง่ือนไขการรับร้ของตวั ละครท่ไี ปสมั ผสั สงิ่ ต่าง ๆ ได้แก่ ตวั ชี เมาส์ ขอบจอ ตวั ละครอืน่ หรอื สีตา่ ง ๆ ตามท่ีเรากาหนด และสามารเกาหนดเงือ่ นไขการรับร้การสมั ผัสระหวา่ งสหี นง่ึ กบั อีกสีหน่งึ และสามารเบอกคา่ ระยะหา่ งของตวั ละครกบั ตัวชเี มาส์หรอื ระหวา่ งตวั ละครสองตัว สามารเเามคาเามรบั ขอ้ มลจากผ้เลน่ ได้ และใช้ส่วน “คาตอบ” เพอื่ นาคาตอบของผเ้ ลน่ ไปใชง้ านต่อ เปน็ เงอ่ื นไขเมือ่ ปมุ่ คยี ์ทเ่ี ลือกเกกด หรือเมาสเ์ กกด ดคา่ ตาแหน่งแกน x และแกน y ของเมาส์ บอกคา่ ระดับความดงั บอกค่าการเคลอื่ นไหวของภาพในวดิ ีโอ บนตวั ละครหรือบนฉาก เปิด ปิด หรอื เปิดวดิ โี อแบบกลับขา้ งซา้ ยขวา ปรับคา่ ความโปรง่ ใส่เป็นคา่ ตามเปอรเ์ ซ็นตท์ ี่กาหนด แสดงคา่ เวลาท่ีผา่ นไป และสามารเจบั เวลาใหมไ่ ด้ บอกคา่ ท่เี ราตอ้ งการของตัวละครหรอื ฉาก บอกเวลาเปน็ หนว่ ยตา่ ง ๆ ทีต่ ้องการ บอกจานวนวันตงั แตป่ ี ค.ศ. 2000 บอก username ของผ้ใชป้ จั จบุ ัน 14
9. หมวดโอเปอรเ์ รเตอร์ ใชส้ าหรบั การดาเนนิ การทางคณติ ศาสตร์ ตรรกศาสตร์ และดาเนนิ การกับขอ้ ความ ประกอบด้วย ดาเนินการทางคณิตศาสตร์ โดยใสค่ ่าไปทังสองฝงั่ เลือกตัว ดาเนนิ การเปน็ บวก ลบ คณ หรือ หาร สมุ่ คา่ จากช่วงค่าทเ่ี รากาหนด เปรียบเทยี บคา่ สองค่าที่ใสเ่ ข้าไปวา่ น้อยกว่ากัน เทา่ กัน หรอื มากกวา่ กนั เงอ่ื นไขความจรงิ ของตรรกะ และ หรอื ไม่ กับ ประโยคทีแ่ สดง ความความจรงิ ทก่ี าหนด แสดงคา่ จากการดาเนนิ การขอ้ ความ มี 3 แบบ ไดแ้ ก่ การ เช่ือมขอ้ ความ การเลือกตวั อกั ษรลาดับที่กาหนดจาก ขอ้ ความ และการแสดงคา่ ความยาวของขอ้ ความ แสดงค่าเศษจากการหารค่าสองค่า และการแสดงคา่ จากการ ปัดเศษขนึ หรอื ลงของตัวเลขทกี่ าหนด แสดงคา่ การดาเนนิ การทางคณิตศาสตรท์ ่ีเลือกกบั ตวั เลข ทางขวา 15
10. หมวด More Blocks ใชส้ รา้ ง Block คาสง่ั เพ่ิมเติม และเพม่ิ ส่วนขยาย 1. สว่ น Make a Block คอื การสรา้ ง Block คาสงั่ ใหมท่ เ่ี ราต้องการ โดยการ สร้างชุด Block คาสัง่ ช่วยให้ไฟล์โปรแกรมมขี นาดเล็กลง และเมือ่ ต้องการ ใช้ Block คาส่ังใหม่ จากตรงไหนของโปรแกรม เราสามารเเรยี กไดเ้ ลยโดย ไมต่ ้องลาก Block คาสงั่ ยอ่ ย ๆ มาสร้าง หนา้ ตาการสรา้ ง Block คาสั่ง ใหม่ ประกอบดว้ ย 1. ส่วนการสรา้ งหนา้ ตา Block ใหม่ 16
ตวั อย่าง การสร้าง Block สาหรับการหาคา่ เลขยกกาลงั (power) 2. สว่ นของการประกอบคาส่งั เพอ่ื ใชง้ านตามทเี่ ราต้องการ ตวั อย่าง ชุดคาสงั่ สาหรบั การยกกาลงั n1 ด้วยเลขชกี าลงั n2 แล้วเก็บ ผลลัพธไ์ วท้ ต่ี วั แปร x เรม่ิ ชดุ คาสัง่ โดย กาหนดคา่ เริม่ ต้นของตวั แปร x เป็น 1 แลว้ ทาซาคณค่า n1 จานวน n2 รอบ ทุกครังทค่ี ณ จะเกบ็ ผลไวท้ ่ี ตวั แปร x วธิ ีการเรยี กใชก้ ็สามารเเรยี กโดยใสค่ ่าตวั เลข 2 ตัว เป็นเลขฐานและเลข ชีกาลงั 17
ตัวอย่างเปน็ 3 ยกกาลงั 3 สว่ นคาตอบจะอย่ในตวั แปร x ดงั นนั หลังจากที่กาหนดคาสั่งให้ตวั ละครพดคา่ x ออกมาเปน็ เวลา 2 วินาที จะ ได้ 2. เพ่มิ ส่วนขยาย เปน็ การเลือกเครื่องมอื ตดิ ตอ่ เสรมิ เข้าไปให้กบั Scratch โดย แต่ละเครือ่ งมือจะมชี ุดคาสง่ั ที่แตกตา่ งกัน 18
ตัวอยา่ งชุดคาสงั่ ของ PicoBoard มเี ซนเซอรแ์ ละปมุ่ กดอยท่ ีอ่ ปุ กรณ์ Block คาสง่ั ของอปุ กรณน์ กี จ็ ะล้อกับตัวอุปกรณ์ มคี าสง่ั เม่อื เกิดเหตกุ ารณป์ ุม่ เกกด ไดแ้ ก่ A B C และ D เช่ือมต่อ จะทาตามคาสง่ั ทกี่ าหนด หรือทาการตรวจสอบ เซนเซอร์แสงหรือเสียงวา่ มากกวา่ หรือนอ้ ยกว่าคา่ ทก่ี าหนด ให้ดาเนนิ การต่อ อยา่ งไร ตัวอย่าง LEGO WeDo 2.0 จะมีมอเตอร์เขา้ มาเกยี่ วข้องกับระบบ สามารเสร้าง โปรแกรมเพอื่ ควบคมุ การทางานของมอเตอร์ และตรวจสอบสเานภาพของ มอเตอรไ์ ด้ 19
2. Costumes ตวั ละครหนง่ึ ตวั จะมลี กั ษณะทแ่ี ตกต่างกนั ตามบริบท ตัวอย่างแมวส้มตวั นี มี 2 Costumes สงั เกตไดว้ า่ แมวสองตวั นเี มอ่ื เราเรยี กใชส้ ลบั กนั จะเปน็ เหมือน แมวกาลังเดนิ อย่ Costumes ในตัวละครมปี ระโยชนใ์ นการทาให้ตัวละครสามารเ แสดงหน้าตาทา่ ทางหรอื คาพดทีต่ า่ งกนั ตามฉากหรือบรบิ ททต่ี า่ งกนั ตามท่เี รา กาหนด 20
เราสามารเเพ่มิ เตมิ ลักษณะอื่นเขา้ ไปโดยเพม่ิ เตมิ ลกั ษณะจากตัวละคร เดมิ ให้คลกิ ขวาท่ี Costume ตัวละครทเ่ี ราตอ้ งการ แล้วเลือก “ทาซา” เราสามารเวาดเส้นเพม่ิ เตมิ ตามท่เี ราตอ้ งการด้วยเครื่องมอื สาเร็จรป ของ Scratch ในการทาให้ตวั ละครมี Costume ทเ่ี ราต้องการ ตัวอย่างการสรา้ ง Costume ของแมวส้มให้มีลกั ษณะม่งุ มนั่ หรอื โกรธมากขนึ อาจนาไปใชเ้ มือ่ ตอ้ ง ต่อส้ 21
กรณเี ปน็ ตวั ละครตวั อนื่ ก็จะมจี านวน Costume ที่โปรแกรมมใี หไ้ มเ่ ทา่ กนั และมลี ักษณะอารมณท์ า่ ทางทีน่ าไปใชไ้ ดแ้ ตกตา่ งกนั ตวั อย่างเจา้ ฉลามนอ้ ยตัวนี มี เงึ 3 Costumes ดว้ ยท่าทางและอารมณ์ทตี่ ่างกนั 3. เสียง ในเมนเสียงของแต่ละตัวละครจะมไี ม่เหมือนกนั ขึนอยก่ บั ลกั ษณะเฉพาะของ ตัวละครนนั 22
ตวั อย่าง เสียงของกระดงิ่ Bells มีไฟลเ์ สยี งทชี่ ือ่ วา่ xylo1 ความยาวเกอื บ 11 วนิ าที ซึ่งเราจะใช้ค่กับสครปิ ต์หมวดที่ 3 หมวดเสยี ง เราสามารเเพม่ิ เสยี งทต่ี ้องการเขา้ มาใหม่ได้ 3 รปแบบ ไดแ้ ก่ เพมิ่ เสยี งจากไฟลท์ ่มี า กบั โปรแกรม บนั ทึกเสียงใหม่เอง และนามาจากไฟลเ์ สียงทอ่ี ย่ในเครอื่ งเรา 23
5. Scripts Area สว่ นสาหรบั ใส่สครปิ ต์ เราสามารเลาก Block จากส่วน Block Palette มา ประกอบกันใสใ่ นสว่ น Scripts Area นี เพือ่ ทาใหต้ ัวละครและฉากทางานตามทเ่ี รา ตอ้ งการ 6. Tip box เป็นส่วนช่วยให้ผใ้ ช้ใหมส่ ามารเเรม่ิ เรียนร้ความสามารเของโปรแกรม Scratch ได้อยา่ งงา่ ยเปน็ ขนั ตอน แบง่ ตามหมวดหม่ไว้เรียกใช้งานได้งา่ ย และมตี วั อยา่ งเกม เร่ืองราว การทาภาพเคล่ือนไหว และวดิ โี อเพลง ไวใ้ หผ้ ้ใช้สามารเทาตามเพอ่ื เกิด ความคิดสรา้ งสรรคต์ ่อยอดได้ ซ่งึ เงึ แมว้ า่ จะเป็นผ้ใชง้ านไประยะหน่ึงแล้วแต่หลงลมื บาง การใช้งานโปรแกรมกส็ ามารเเลือกดส่วนทตี่ ้องการไดส้ ะดวกจากตวั เลอื กทีม่ ใี ห้เหล่านี 24
ภาพหนา้ ตา Tip Box ทัง 3 สว่ น 25
การกาหนดคาส่งั ให้กับเหตุการณ์ ในชีวติ ประจาวนั เรามีการตงั โปรแกรมตวั เองในการตอบโตก้ บั ส่ิงรอบขา้ งทแ่ี ตกต่างกัน โดยไมร่ ต้ ัว เช่น การทเ่ี ราโดนแดด เรานามอื หรือสิง่ ของขนึ มาบังทศิ ทางทแี่ ดดสอ่ ง เราเจอคน พดเสียงดงั ใส่ เราร้สกึ ตกใจ และพยายามเดนิ ออกจากบรเิ วณนัน หรอื นกั กฬี าวิ่งแข่ง 400 เมตร ทอี่ ยใ่ นท่าเตรยี มพร้อม พอไดย้ ินเสยี งสัญญาณเรมิ่ ว่งิ นกั กีฬาจงึ เร่มิ ออกตัววงิ่ เปน็ ตน้ ในการสร้างโปรแกรม เราจะต้องเจอกบั เหตกุ ารณห์ ลายอยา่ งที่แตกตา่ งกันจากผใ้ ช้ โดยเหตุการณเ์ หลา่ นนั ผส้ ร้างโปรแกรมจะเปน็ คนกาหนดว่า เมือ่ เกิดเหตกุ ารณแ์ บบไหนใหท้ า อะไร ตัวอยา่ ง การสร้างเหตุการณเ์ มือ่ ตอ้ งการควบคมุ ตวั ละครให้ไปตามทศิ ทาง ซา้ ย ขวา บน ล่าง โดยการกดป่มุ ลกศรทศิ ทาง 26
โดยในโปรแกรม Scratch มเี หตกุ ารณ์ให้เราเลอื กใชไ้ ด้หลายแบบ ได้แก่ 1. เมอ่ื ธงเขียวเกคลิก 2. เมอ่ื ปมุ่ คยี ท์ ี่เรากาหนดเกกด 3. เมื่อตัวละครทีเ่ ราใส่สครปิ ต์ไวเ้ กกด 4. เม่อื ฉากหลงั เราเกเปล่ียนเปน็ ฉากหลงั ทก่ี าหนด 5. เมื่อความดงั ระยะเวลา หรอื การเคลอ่ื นไหวของภาพในวิดีโอทกี่ าลงั จบั อยม่ คี ่า มากกว่าทีก่ าหนด 6. เมอื่ ตัวละครท่ีเราเลอื กไดร้ บั ขอ้ ความทีก่ าหนด 1. เมื่อธงเขยี วเกคลกิ โปรแกรมจะทางานเมื่อธงเขียวบรเิ วณดา้ นบนขวาของฉากเกคลิก 27
ตวั อย่างการใชง้ าน เมอ่ื คลิกที่ธงเขยี ว ใหเ้ คร่อื งบนิ บนิ ผา่ น เราจะใส่สครปิ ตน์ ีไวท้ เี่ คร่ืองบนิ 28
2. เมอ่ื ปมุ่ คยี ท์ ีเ่ รากาหนดเกกด โดยเราสามารเเลอื กปุม่ คยี ์ไดห้ ลายปมุ่ ได้แก่ ลกศรทงั สีท่ ศิ ทาง พนื ทวี่ า่ ง (spacebar) ตัวอักษรภาษาองั กฤษทัง 26 ตวั (A - Z) ตัวเลข 0-9 และการคลกิ ทป่ี มุ่ ใดกไ็ ด้ ตวั อย่าง เม่อื กด spacebar (พนื ท่ีว่าง) ใหเ้ ลน่ เสียงเครอ่ื งดนตรี และแสดงข้อความวา่ “โดนเคาะ” โดยการใสส่ คริปตต์ ามนี 29
อีกหนงึ่ ตัวอย่าง เป็นตัวอักษร A เมื่อเรากดทป่ี มุ่ ‘a’ บน keyboard ตัวอกั ษรจะตัวใหญข่ ึน ด้วยสคริปตน์ ี 30
3. เม่อื ตัวละครทีเ่ ราใสส่ ครปิ ต์ไว้เกกด การใช้เมาสเ์ พอื่ คลกิ ไปทสี่ ว่ นต่าง ๆ ของฉาก โดยเฉพาะเกมทต่ี ้องใช้ เมาสเ์ ปน็ สงิ่ หลกั ในการเลน่ จะต้องใช้ Block เหตกุ ารณ์นีอยา่ งแนน่ อน ตัวอยา่ ง เมอ่ื เจา้ แมวส้มตวั นเี กคลกิ จะแสดงผลออกมาว่าเกคลิก ด้วยสคริปตห์ น้าตาแบบนี 31
อกี หน่ึงตัวอย่าง เป็นผช้ ายช่ือ Calvrett กาลงั นง่ั อย่ เมื่อเกคลิก ทาการเปล่ยี นทา่ และแสดงคาพด ดว้ ยสคริปต์ดงั นี 32
4. เม่ือฉากหลังเราเกเปลยี่ นเปน็ ฉากหลังท่ีกาหนด บางครงั ในการเล่าเรื่องราว หรือ สรา้ งเกม การเปล่ยี นฉากเพื่อใหผ้ ้ใชร้ ้ว่าเรา กาลงั อยใ่ นฉากทจ่ี ะมวี ธิ ีการใช้หรือเรอ่ื งราวทีแ่ ตกตา่ งกนั เชน่ เม่อื ฉากเปล่ยี นเปน็ ทะเล ใหเ้ ร่มิ เล่นเสยี งคลนื่ หรอื เม่ือฉากอย่ในสนามรบ ให้มีทหารคอ่ ย ๆ เดนิ เขา้ มาใน ฉาก เปน็ ตน้ ตวั อยา่ ง มีเครือ่ งบนิ กับผ้หญงิ ชอ่ื Abby 33
เม่ือคลกิ ทีเ่ ครอ่ื งบนิ จะทาให้ฉากหลงั เปลยี่ นเป็นทะเลทราย (gravel desert) แล้วเมอ่ื ฉากหลังเปลยี่ น Abby จะเปลี่ยนชดุ เป็น ชุด b เรามาดสครปิ ต์ของเครอื่ งบิน และสครปิ ตข์ อง Abby กัน สคริปต์ของเครอ่ื งบนิ สคริปตข์ อง Abby 34
5. เมอ่ื ความดัง ระยะเวลา หรือการเคลื่อนไหวของภาพในวดิ โี อท่ีกาลงั จบั อยม่ ีคา่ มากกวา่ ที่กาหนด เราสามารเใชก้ ารตรวจสอบสามส่งิ นเี พอื่ เพือ่ โปรแกรมจะเปลยี่ นสเานะหรือ ทางานบางอยา่ งใหส้ อดคลอ้ งกบั สงิ่ ทีเ่ ปลี่ยนแปลง ตวั อยา่ ง เราจะจับเวลา 10 วินาที เมอ่ื เึง 10 วนิ าทใี ห้แมวส้มกลบั หัว โดยมตี ัวชว่ ยนบั เวลาใหเ้ ราเหน็ โดยการขดี เครื่องหมายเกทีส่ ่วนจบั เวลาในหมวด การรบั ร้ 35
และสครปิ ต์ทใ่ี สไ่ ปในตัวแมว จะได้แมวตีลังกา หลงั จากผ่านไป 10 วนิ าที 6. เมื่อตัวละครท่เี ราเลอื กได้รบั ข้อความทีก่ าหนด การส่งสารระหวา่ งตัวละครหรือสง่ิ ของบางอย่างจะทาใหเ้ ม่ือตวั ละครตัว หนง่ึ ทาอะไรบางอยา่ งแล้วตอ้ งการใหต้ วั ละครอีกตวั หรอื สิง่ ของบางอย่างทางาน ต่อเน่อื งจากการกระทาของตวั ละครตัวนนั เราสามารเใชก้ ารกระจายข้อความชว่ ย ให้ตัวละครตวั อ่ืนรบั ร้เงึ คาสงั่ จากตัวละครนี 36
ตัวอยา่ ง มรี เทาความสะอาดเนนคนั ใหญ่ กบั ลกศรชไี ปทางขวา เม่อื คลกิ ทลี่ กศร รเจะเคลือ่ นไปทางขวา โดยเราใส่สคริปตท์ ่มี ีการคยุ กนั ไดข้ องสองตวั ละครนี ทีล่ กศร เราจะใสส่ ครปิ ต์นี และทรี่ เเราจะใส่สคริปต์นี 37
การกาหนดตวั แปรและการคานวณ เราสามารเเกบ็ ข้อมลตวั เลขและตวั อกั ษรบรรจุใสส่ ่ิงทเ่ี รยี กวา่ ตวั แปร และสามารเใช้ การคานวณทางคณิตศาสตรเ์ พ่อื ใช้หาผลลพั ธ์ในบางสว่ นของโปรแกรม การสรา้ งตัวแปร คลิกท่ีสรา้ งตัวแปร และใสช่ ่อื ตัวอย่าง ชอ่ื score และเลอื กสาหรบั ตวั ละครทงั หมด กดเช็คท่ีกล่องสเี่ หลย่ี มหนา้ Number เพื่อให้ ตัวเลขทสี่ ่มุ มาอยบ่ นหนา้ จอสาหรบั ดผล ที่เกดิ ขนึ มี Block ตวั เลือกในการดาเนนิ การเกยี่ วกบั ตัวแปรตามนี ใชใ้ นการใสค่ ่าให้กบั ตัวแปรได้ โดยคา่ เรม่ิ ตน้ กรณีเรายังไมไ่ ด้ใสจ่ ะเป็น 0 38
ใชเ้ พือ่ เปลยี่ นคา่ ของตวั แปรเพิ่มตามจานวนทีก่ าหนดด้านหลงั เชน่ เราสามารเใชใ้ น การเพิ่มแตม้ ในเกมได้ เปน็ ตน้ Block นคี วรจะเปน็ คาวา่ “แสดงตัวแปร” แต่เข้าใจว่าคนแปรจากภาษาองั กฤษมาผิด ใช้ สาหรับแสดงตัวแปรนที างหนา้ จอ ส่วน Block นีคอื การ “ซ่อนตวั แปร” จริง ๆ ใช้ซ่อนตัวแปรออกจากหนา้ จอ ตวั อย่างการใชต้ ัวแปรเป็นส่วนหน่ึงในการสรา้ งเกม เกมทเี่ ราจะสร้างเป็นเกมบอกว่า ตวั เลขทส่ี มุ่ มาไดม้ ีค่าน้อยหรอื มาก โดย แสดงคาวา่ High หาก เลขอยใ่ นช่วง 4 เงึ 6 และแสดง คา่ Low หากเลขทไี่ ด้อย่ในช่วง 1 เึง 3 เราจะเรม่ิ โปรแกรมสมุ่ โดยคลกิ ทีป่ มุ่ สีฟา้ 39
การนาตวั แปรไปใส่ไวใ้ นสครปิ ต์จดุ ต่าง ๆ ของโปรแกรม เรม่ิ ตังแตส่ ว่ นปมุ่ สฟี า้ จะเป็น การกาหนดคา่ จากการสมุ่ ใส่ไว้ในตัวแปร Number 40
สว่ นป้ายบอก High และ Low จะนาคา่ จากตัวแปร Number มาตรวจสอบ High Low การคานวณ ในการสรา้ งโปรแกรมหรอื เกม เราจะมีการคานวณในบางส่วน เราใช้คอมพิวเตอรใ์ นการ คานวณให้เราได้เลย การคานวณทางคณติ ศาสตร์และตรรกศาสตรใ์ นโปรแกรม Scratch มใี ห้ เลอื กหลายตวั ไดแ้ ก่ 1. การคานวณพืนฐาน การคานวณพืนฐานอย่างบวก ลบ คณ หรอื หาร โดยในชอ่ งวงกลมสีขาวเราสามารเพิมพต์ วั เลขใส่เขา้ ไป หรอื Block ที่เปน็ ตัวเลข ตัว แปร หรือการคานวณใสเ่ ข้าไปไดเ้ ช่นกนั 41
ตวั อยา่ ง การนา Block ตัวแปร การคานวณ และการพิมพ์ตัวเลข ใสเ่ ข้าไปใน Block การคานวณการบวก 2. การสมุ่ ตวั เลข เราจะใช้การสุ่มตวั เลขส่วนมากในการสรา้ งเกม จาก Block ตัวอย่างดา้ นบน เราสามารเเลอื กสมุ่ ตวั เลขจาก 1 เึง 10 จริง ๆ เราสามารเแกไ้ ขตวั เลขตรงนีได้ เชน่ การสุ่มเลข 1 เึง 100 เปน็ ตน้ 3. การเปรยี บเทียบทางคณติ ศาสตร์ เราใช้การเปรยี บเทยี บทางคณติ ศาสตรก์ บั ส่วนที่เป็นเงอ่ื นไข เพื่อตัดสนิ ใจวา่ โปรแกรมจะทางานส่วนใดตอ่ ตวั อยา่ งการนาไปใช้กับสว่ นการตดั สินใจของโปรแกรม หรอื สว่ นทม่ี ีชอ่ งให้ใส่ กล่อง 6 เหลยี่ ม 42
4. การดาเนนิ การทางตรรกศาสตร์ สว่ นของการตดั สินใจบางครังเราจะใช้การเปรียบเทยี บหลายชุดรว่ มกนั ในการ ตดั สินใจทาหรือไมท่ าชุดคาสัง่ การดาเนนิ การทางตรรกศาสตร์จะชว่ ยให้การตดั สนิ ใจ นันครบเว้ นมากขนึ ตัวอยา่ งการตัดสินใจในชีวิตประจาวนั เชน่ เา้ ฝนตก และ แดดออก จะเกดิ ร้งุ กินนา กรณีนีเงื่อนไขของเหตกุ ารณ์คือ “ฝน ตก และ แดดออก” ซ่งึ ขันดว้ ย “และ” เา้ ฝนไมต่ ก หรอื แดดไมอ่ อก อย่างใดอย่างหนง่ึ ก็จะไม่เกิดรุ้งกนิ นา เ้าฝนตกจนนาขงั หรอื มีอบุ ตั ิเหตรุ เชน รเจะติด กรณนี เี งอื่ นไขของเหตกุ ารณ์ คือ “ฝนตกจนนาขัง หรอื มีอบุ ตั ิเหตรุ เชน” แตข่ ันดว้ ย “หรือ” ดังนนั ไม่วา่ ฝนตกจน นาขงั หรือมอี บุ ัตเิ หตุรเชน อย่างใดอยา่ งหนง่ึ ก็จะทาให้รเตดิ 43
ส่วน “ไม่” เปน็ การทาให้คา่ ความจริงเป็นเท็จ และคา่ ความเทจ็ เปน็ จรงิ ตรงขา้ ม กัน ตัวอยา่ งโปรแกรม การใชต้ รรกศาสตรเ์ ข้ามาเกย่ี วข้อง 44
ตามสครปิ ตน์ ี มเี งื่อนไขเกยี่ วกบั ตาแหนง่ ของตัวละคร ตอ้ งเป็นจรงิ ทงั ตาแหนง่ x และ ตาแหนง่ y เา้ อย่ในเงอ่ื นไขแมวจะเคลอื่ นทีไ่ ปด้านหลัง 100 ก้าว จะได้ผลลพั ธด์ งั นี 45
5. การดาเนนิ การกับข้อความ การสรา้ งเรอ่ื งราว เกม หรอื การทาภาพเคลอ่ื นไหว ทมี่ กี ารพดคุย หรอื สอ่ื สาร ใหผ้ ใ้ ชง้ านเขา้ ใจ จาเปน็ ตอ้ งอาศยั ขอ้ ความทห่ี ลากหลายและยืดหยนุ่ Scratch จงึ มี Block คาสงั่ พืนฐานใหก้ ับผส้ ร้างโปรแกรมเลอื กใชง้ านไดอ้ ย่างงา่ ยตามความตอ้ งการ ได้แก่ 1. การเชือ่ มขอ้ ความ 2. การเลือกดตวั อักษรของคาโดยการใช้ตาแหน่งในการเลือก 3. การบอกคา่ ความยาวของข้อความ 1. การเชอื่ มข้อความ เราสามารเเชื่อมข้อความสองขอ้ ความโดยอาศัย Block คาสัง่ นี 46
ตวั อยา่ งการใช้ควบคก่ บั การรบั ช่อื จากผใ้ ช้มาแสดงคาทักทาย สครปิ ตท์ ใี่ ช้ 47
2. การเลือกดตวั อักษรของขอ้ ความโดยการใชต้ าแหนง่ ในการเลือก เราสามารเใชง้ านโดยใสส่ ครปิ ต์ และตวั เลขแสดงตาแหน่ง จากตวั อยา่ ง ตัวอักษรตัวท่ี 2 ของคาวา่ “English” กจ็ ะไดต้ วั ‘n’ 3. การบอกคา่ ความยาวของข้อความ ตัวอย่างเม่อื ใชส้ คริปตน์ ีเพือ่ บอกค่าความยาวของคาว่า “Thailand” กจ็ ะ ไดผ้ ลออกมาเป็น 8 ซง่ึ ก็คือจานวนตัวอกั ษรของข้อความ หลายครังเราอาจจะใช้การไลด่ ตวั อกั ษรในคาค่กบั ความยาว ตวั อยา่ ง รบั ชื่อเขา้ ไปแลว้ ให้แสดงตัวอักษรทลี ะตัวท่ีอย่ในช่อื 48
Search