Page 1

บทที่ 1 ้ งต้น โปรแกรมภาษาโลโก้เบือ การติดตงโปรแกรม ั้ MSWLogo 1. 2. 3. 4.

นำ ำแผ่น CD โปรแกรมภำษำ MSWLogo ใส่ในเครือ ่ งเล่น CD-ROM นำ ำเมำส์มำคลิ๊ ก 1 ครัง้ ทีไ่ อคอน My Computer จำกนัน ้ นำ ำเมำส์มำดับเบิล ้ คลิ๊ กทีไ่ อคอน CD-ROM ั่ เดียวกับ mswlogo ทีใ่ ช ้กันอยูใ่ นปั จจุบัน หำก จะปรำกฏดังรูป ในแผ่น CD นีจ ้ ะมี mswlogo ซึง่ จะเป็ นเวอร์ชน ระบบปฏิบัตก ิ ำรของเครือ ่ งคอมพิวเตอร์เป็ น Windows ทีต ่ ำ่ำ กว่ำ XP เช่น Windows 98 หรือ Windows ME ผู ้ เรียนรู ้สำมำรถดับเบิล ้ คลิ๊ กที่ mswlogo เพือ ่ ติดตัง้ ได ้เลย ดังรูป

5. หำกระบบปฏิบัตก ิ ำรของคอมพิวเตอร์เป็ น Windows XP หรือ Windows 2000 ผู ้เรียนรู ้ต ้องติดตัง้ โดยกำ รดับเบิล ้ คลิ๊ กทีไ่ อคอน SetupLogo ดังรูป

กำรติดตัง้ โดยดับเบิล ้ คลิ๊ กทีไ่ อคอน SetupLogo ซึง่ เป็ น BAT file จะดำำเนินกำรติดตัง้ mswlogo และติดตัง้ UserPort ให ้โดยอัตโนมัต ิ UserPort เป็ นโปรแกรมเปิ ดพอร์ตให ้คำำสัง่ ติดต่อพอร์ตของโลโก ้สำมำรถใช ้งำนเพือ ่ ติดต่อกับพอร์ตของคอมพิวเตอร์ได ้ บน Windows XP และ Windows 2000 6. จะปรำกฏหน ้ำต่ำงดังรูป

7. จำกนัน ้ ก็จะขึน ้ หน ้ำต่ำง ให ้คลิ๊ กทีป ่ ม ุ่ Next ไปเรือ ่ ย ๆ จนกว่ำเครือ ่ ง จะลงโปรแกรมเสร็จ ่ น ้ำต่ำง CD-ROM ให ้คลิกปิ ดหน ้ำต่ำงนี้ 8. เมือ ่ เสร็จแล ้วจะกลับมำสูห จำกนัน ้ ให ้สังเกตทีห ่ น ้ำ Desktop จะปรำกฏไอคอน Microsoft Windows Logo และไอคอน UserPort ด ้วยในกรณีตด ิ ตัง้ บน Windows XP หรือ Windows 2000 ซึง่ แสดงว่ำได ้ทำำกำรติดตัง้ เสร็จเรียบร ้อยแล ้ว


9. ในกรณีมไี อคอน UserPort ปรำกฏอยู่ ก่อนจะใช ้งำนให ้นำ ำเมำส์มำคลิ๊ ก 1 ครัง้ ทีไ่ อคอน UserPort ซึง่ เมือ ่ หลัง จำกทีค ่ ลิ๊ กแล ้วก็จะปรำกฏหน ้ำต่ำงดังรูป ให ้ย่อหน ้ำต่ำงนี้ แล ้วค่อยเรียกโปรแกรม Microsoft Windows Logo ขึน ้ มำใช ้งำน

ส่วนประกอบของโปรแกรม MSWLogo 32

ส่วนหัวโปรแกรม (Title Bar) แถบคำำสัง่ ( Menu Bar)

หน ้ำจอหลัก แสดงผลแบบกรำฟฟิ กส์ ของโปรแกรมภำษำโลโก ้

เต่ำ (Turtle)

ปุ่ มคำำสัง่ (Command Buttons)

ส่วนทีแ ่ สดงคำำสัง่ และผลของคำำสัง่ (Re-Call Box)

ส่วนทีไ่ ว ้ป้ อนคำำสัง่ (Input Box) ภำพที่ 1.3 ภำพแสดงส่วนประกอบของโปรแกรม


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

ภำพที่ 1.4 ภำพแสดงเมนู File เมนู File จะมีรำยกำร New เพือ ่ ทำำกำรเปิ ดแฟ้ มข ้อมูลเพือ ่ ทำำงำนใหม่ Load ใช ้สำำหรับเปิ ดแฟ้ มข ้อมูลเก่ำเพือ ่ นำ ำมำใช ้งำนหรือแก ้ไขต่อ ่ ฟ้ มข ้อมูลเก่ำทีต Save ใช ้เพือ ่ บันทึกแฟ้ มในหน่วยควำมจำำลงสูแ ่ งั ้ ไว ้ ่ ฟ้ มข ้อมูลใหม่ SaveAs ใช ้เพือ ่ บันทึกลงในแฟ้ มข ้อมูลทีต ่ งั ้ ขึน ้ ใหม่หรือย ้ำนไปลงสูแ Edit ใช ้เพือ ่ ทำำกำรบันทึกและแก ้ไขชุดคำำสัง่ ในกำรทำำงำนโดยเปรียบเสมือนโปรแกรม หรือชุดคำำสัง่ ย่อยซึง่ ในส่วน นีเ้ หมือนกับโปรแกรม Editor ทั่ว ๆไป Erase ใช ้เพือ ่ ลบคำำสัง่ ย่อยทีไ่ ม่ต ้องกำรออกจำกแฟ้ มข ้อมูลหรือหน่วยควำมจำำ Exit ใช ้เพือ ่ ออกจำกโปรแกรมภำษำโลโก ้

ภำพที่ 1.5 ภำพแสดงเมนู Bitmap เมนู Bitmap ใช ้สำำหรับจัดกำรรูปภำพทีอ ่ ยูใ่ นแฟ้ ม หรือทีอ ่ ยูบ ่ นพืน ้ ทีท ่ ำำงำนในหน ้ำจอหลักของภำษำโลโก ้ โดยอำจจะ ทำำกำรบันทึกรูปหน ้ำจอลงภำพ หรือว่ำ เรียกรูปภำพจำกแฟ้ มข ้อมูลขึน ้ มำใช ้


ภำพที่ 1.6 ภำพแสดงเมนู Set เมนู Set ใช ้สำำหรับกำรปรับแต่งองค์ประกอบของโปรแกรมโดยใช ้ PenSize Label Font Commander Font Pen Color Flood Color Screen Color

ใช ้สำำหรับขนำดปำกกำทีท ่ ำำกำรลำกเส ้นบนจอภำพ ้ปรั ่ ใช บชือตัวอักษรและขนำดตัวอักษรเวลำพิมพ์ ลงบนจอภำพ ใช ้สำำหรับปรับขนำดและประเภทตัวอักษรทีพ ่ ม ิ พ์ ลงในช่องป้ อนชุดคำำสัง่ ้สำ ้นที ใช ำหรับปรับสีของเส จ ่ ะลำกหรือวำดบนจอภำพ ใช ้สำำหรับปรับสีพน ื้ หลังของจอภำพพืน ้ ทีท ่ ำำงำน แต่จำำเป็ นต ้องใช ้คำำสัง่ เทสีด ้วย และจะทำำกำรเท สีลงในพืน ้ ทีป ่ ิ ดคล ้ำยกับโปรแกรม Paint ใช ้ปรับสีพน ื้ หลังของหน ้ำจอหลักของโปรแกรมภำษำโลโก ้

ภำพที่ 1.7 ภำพเมนู Zoom เมนู Zoom ใช ้สำำหรับย่อและขยำยขนำดภำพบนหน ้ำจอหลักของโปรแกรมภำษำโลโก ้ In Out Normal

เป็ นกำรขยำยเข ้ำให ้ใหญ่ขน ึ้ เป็ นกำรย่อขนำดภำพให ้เล็กลง เป็ นกำรสัง่ ให ้ปรับเป็ นขนำดมำตรฐำน


ภำพที่ 1.8 ภำพเมนู Help เมนู Help ใช ้เพือ ่ สนับสนุนกำรใช ้งำนภำษำโลโก ้ เช่น Index เป็ นสำรบัญตัวอย่ำงคำำสัง่ เพือ ่ ให ้ค ้นคำำอธิบำย ชุดคำำสัง่ พร ้อมตัวอย่ำง Demo เป็ นตัวอย่ำงโปรแกรมทีเ่ ขียนไว ้ให ้ ในภำษำโลโก ้นี้ เรำจะเห็นรูปสำมเหลีย ่ มตรงกลำงบนพืน ้ ทีข ่ องหน ้ำจอหลักของโปรแกรมนัน ้ เดิมทีใน ั่ แรก ๆจะเป็ นรูปเต่ำ แต่ในเวอร์ชน ั่ ใหม่กลำยเป็ นรูปสำมเหลีย MSWLOGO เวอร์ชน ่ ม แต่เรำก็ยังเรียกสำมเหลีย ่ มส่วนนีว้ ำ่ "เต่ำ" ในพืน ้ ทีบ ่ ริเวณนี้ โลโก ้จะใช ้เป็ นพืน ้ ทีแ ่ สดงผลทำงกรำฟฟิ กส์ ดังนัน ้ ผลของกำรวำดรูป ลำกเส ้น และกำรโหลดภำพ จำกไฟล์ทเี่ ป็ นรูปภำพต่ำง ๆ จะแสดงบริเวณพืน ้ ทีข ่ องหน ้ำจอหลัก อีกส่วนหนึง่ ทีอ ่ ยูด ่ ้ำนล่ำง คือหน ้ำต่ำง Commander แบ่งออกเป็ น 3 ส่วนคือ Input Box คือพืน ้ ทีบ ่ รรทัดเดียวด ้ำนล่ำงใช ้ป้ อนคำำสัง่ เข ้ำไปทีละบรรทัด Re-Call Box คือพืน ้ ทีด ่ ้ำนบนของ Input Box โดยพืน ้ ทีต ่ รงนีจ ้ ะใช ้แสดงคำำสัง่ ทีโ่ ปรแกรมประมวลผลไปแล ้ว พร ้อมกับ แสดงผลของคำำสัง่ ทีเ่ ป็ นผลทำงคณิตศำสตร์ และผลของค่ำรีจส ิ เตอร์ตำ่ ง ๆ ผู ้เรียนสำมำรถใช ้เมำส์ไปค ลิ๊ ก หรือ กด Tab ไปทีค ่ ำำสัง่ เดิมทีป ่ ระมวลผลไปแล ้วมำใช ้ใหม่ได ้ ก็จะปรำกฏใน Input Box ทำำให ้ไม่ ต ้องพิมพ์ใหม่ Command Buttons คือกลุม ่ ของปุ่ มคำำสัง่ มีรำยละเอียดดังนี้ ใช ้หยุดกำรทำำงำนของโปรแกรมขณะทีก ่ ำำลังทำำงำนตำมคำำสัง่ อยูอ ่ ย่ำงไม่มเี งือ ่ นไข ใช ้แสดงคำำสัง่ แต่ละบรรทัดบนพืน ้ ทีข ่ อง Re-Call Box ขณะทีท ่ ำำกำรประมวลคำำสัง่ ในส่วนปลีกย่อยไป จนครบทัง้ หมด เมือ ่ คลิกทีหนึง่ แล ้วก็จะมี Untrace ซึง่ ก็จะตรงกันข ้ำม Trace คือจะไม่เห็นกำร ประมวลคำำสัง่ ในแต่ละบรรทัด Pause ใช ้หยุดกำรทำำงำนของโปรแกรมเช่นกันแต่เป็ นแบบชัว่ ครำว Status ใช ้ดูสถำนะของโปรแกรม หลังจำกคลิ๊ กปุ่ มนีไ ้ ปแล ้ว ปุ่ มจะแสดงเป็ น UnStatus แทนทีซ ่ งึ่ เป็ นคำำสัง่ ตรงกันข ้ำมกัน Step ใช ้สัง่ ทำำงำนอย่ำงเป็ นขัน ้ ตอน มี UnStep เป็ นคำำสัง่ ตรงกันข ้ำมกัน Reset ใช ้เซ็ตกำรทำำงำนทัง้ หมดให ้มีสภำพเริม ่ กำรทำำงำนใหม่ Execute เป็ นคำำสัง่ ให ้โปรแกรมเริม ่ ทำำงำน ซึง่ ให ้ผลเช่นเดียวกันกับกำรกดปุ่ ม Enter Edall หมำยถึง Edit All เป็ นปุ่ มสำำหรับต ้องกำรเข ้ำไปแก ้ไขโปรแกรมในไฟล์ทเี่ รำสร ้ำงขึน ้ มำ โดยจะแสดง ทุกโปรแกรมทีม ่ อ ี ยูใ่ นไฟล์นัน ้ ๆ ซึง่ จะให ้ผลเช่นเดียวกับกำรเข ้ำเมนู Edit แล ้ว ตำมด ้วย All Halt Trace

แบบฝึ กห ัดบทที่ 1 1. ให ้ผู ้เรียนทำำแบบฝึ กหัดดังนี้ 1.1 ให ้ผู ้เรียนทดลองติดตัง้ โปรแกรมภำษำโลโก ้ 1.2 ให ้ผู ้เรียนทดลองเรียกโปรแกรมภำษำโลโก ้แล ้วทดลองใช ้แถบคำำสัง่ (Menu Bar) 1.3 ให ้ผู ้เรียนไปยังแถบคำำสัง่ Help แล ้วเรียกเมนู Index ทีอ ่ ยูใ่ นคำำสัง่ Help หลังจำกนัน ้ ให ้ผู ้เรียนทดลองเรียก คำำสัง่ ต่ำง ๆ มำทดลองใช ้ดู


่ั น ้ ฐานภาษาโลโก้ คำาสงพื ่ั ย กลุม ่ คำาสงเกี ่ วก ับปากกาและการเคลือ ่ นทีข ่ องเต่า คำำสัง่ พืน ้ ฐำนทีแ ่ สดงผลลัพธ์บนหน ้ำจอแสดงผลหลักทีเ่ ป็ นกรำฟฟิ กส์ เช่น FD, RT, LT, BK, PU, PD ฯลฯ fd หรือ forward หมำยถึงกำรลำกเส ้นเดินไปข ้ำงหน ้ำ มีรป ู แบบคำำสัง่ ดังต่อไปนี้ fd ระยะในการเดิน เช่น fd 100 หมำยถึงเดินไปข ้ำงหน ้ำ 100 ก ้ำว ผลก็คอ ื เรำจะเห็นรูปสำมเหลีย ่ มเลือ ่ นขึน ้ ไปข ้ำง บนเป็ นเส ้นตรงตำมระยะทีเ่ รำกำำหนดดังรูป จริง ๆ แล ้ว 100 ก ้ำวคือ 100 จุดพิกเซลของจอภำพ นั่นเอง

ภำพที่ 2.1 ภำพแสดงผลกำรทำำงำนของคำำสัง่ กำรเดินไปข ้ำงหน ้ำ จำกตัวอย่ำงดังกล่ำวสำมำรถทีจ ่ ะพิมพ์คำำสัง่ อย่ำงเต็มหรือว่ำคำำสัง่ อย่ำงย่อก็จะแสดงผลลัพธ์เหมือนกัน ให ้ทำำกำร ทดสอบพิมพ์ forward 100 หรือ fd 100 เพือ ่ เทียบผลทีแ ่ สดงบนจอภำพ

จำำไว ้เสมอว่ำในภำษำโลโก ้ คำำสัง่ และค่ำทีใ่ ส่ ต่อจำกคำำสัง่ นั น ้ ๆ จะต ้องมีวรรคคั่นกลำงเสมอ

bk หรือ back คือกำรเดินถอยหลัง รูปแบบคำำสัง่ เป็ นดังนี้ bk ระยะในการเดิน เช่น bk 50 คือกำรถอยหลัง 50 ก ้ำว เต่ำจะเดินถอยหลังทับเส ้นทำงเดิมเป็ นระยะทำง 50 ก ้ำว rt หรือ right คือกำรเลีย ้ วขวำ รูปแบบคำำสัง่ เป็ นดังนี้ rt องศาในการเลีย ้ ว เช่น rt 90 หมำยถึงเลีย ้ วขวำเป็ นมุม 90 องศำ ให ้สังเกตว่ำเต่ำจะเพียงแต่หันหัว ถ ้ำจะให ้เดิน ต ้องเพิม ่ คำำสัง่ อืน ่ ๆ ลงไปหลังจำกนี้ lt หรือ left คือกำรเลีย ้ วซ ้ำย รูปแบบคำำสัง่ เป็ นดังนี้ lt องศาในการเลีย ้ ว เช่น lt 90 หมำยถึงเลีย ้ วซ ้ำยเป็ นมุม 90 องศำ จะให ้ผลคล ้ำย ๆ กับ rt แต่จะหมุนวนไปทำงซ ้ำย


คำาสง่ ั circle คือกำรวำดรูปวงกลม มีรป ู แบบคำำสัง่ ดังนี้ circle ร ัศมีของวงกลม เช่น circle 50 หมำยถึงวำดรูปวงกลมทีม ่ รี ัศมีเท่ำกับ 50 ต ัวอย่างคำาสง่ ั Circle 50

คำาสง่ ั ellipse คือคำำสัง่ วำดรูปวงรี มีรป ู แบบคำำสัง่ ดังนี้ ellipse เส้นผ่าศูนย์กลางแนวตงั้ เส้นผ่าศูนย์กลางแนวนอน เช่น ellipse 30 70 จะได ้รูปวงรีทม ี่ เี ส ้นผ่ำศูนย์กลำงในแนวตัง้ เท่ำกับ 30 และมี ผ่ำศูนย์กลำงในแนวนอนเท่ำกับ 70

Ø แนวตัง้

ภำพที่ 2.2 ภำพแสดงผลกำรทำำงำนของคำำสัง่ circle 50

Ø แนวนอน

คำาสง่ ั arc คือคำำสัง่ ในกำรวำดเส ้นโค ้ง มีรป ู แบบคำำสัง่ ดังนี้ arc มุมของเส้นโค้ง ร ัศมีของเส้นโค้ง เช่น arc 180 100 ผลคือจะได ้เส ้นโค ้งทีม ่ รี ัศมี 100 และถูกลำกออกไปเป็ น มุม 90 องศำ ต ัวอย่าง คำาสง่ ั Arc 180 100

ภำพที่ 2.3 ภำพแสดงผลกำรทำำงำนของคำำสัง่ arc 180 100


คำาสง่ ั pu หรือ penup คือคำำสัง่ ยกปำกกำ รูปแบบคำำสัง่ เพียงพิมพ์คำำว่ำ pu จำกนัน ้ เมือ ่ มีกำรใช ้คำำสัง่ อืน ่ ๆ ต่อไปเรำ จะไม่เห็นเส ้นทีเ่ กิดขึน ้ จำกกำรลำก หรือวำดอีกเลย คำาสง่ ั pd หรือ pendown คือคำำสัง่ วำงปำกกำหรือ จรดปำกกำลง เพือ ่ ให ้เห็นเส ้นในกำรใช ้คำำสัง่ อืน ่ ๆ เพือ ่ ลำกหรือ วำดเส ้นต่อไป คำาสง่ ั cs หรือ clearscreen คือคำำสัง่ ล ้ำงหน ้ำจอบริเวณหน ้ำจอหลัก ผลของคำำสัง่ คือ จะลบทุกอย่ำงบนหน ้ำจอหลัก แล ้วรูปสำมเหลีย ่ มหรือเต่ำจะกลับมำอยูต ่ ำำแหน่งเริม ่ ต ้นเสมอ ต ัวอย่าง คำาสง่ ั pu pd cs Cs Fd 100 Rt 90 Pu Fd 50 Pd Fd 50 Rt 90 Fd 100 Rt 90 Fd 50 Rt 90 Fd 100 Pu Home

ภำพที่ 2.4 ภำพแสดงผลกำรทำำงำนของคำำสัง่ pu pd cs คำาสง่ ั clean คือคำำสัง่ ล ้ำงหน ้ำจอบริเวณหน ้ำจอหลัก เช่นเดียวกันกับ clearscreen เพียงแต่หลังจำกใช ้คำำสัง่ clean แล ้ว รูปสำมเหลีย ่ มหรือเต่ำจะอยูก ่ บ ั ที่ ณ ตำำแหน่งทีม ่ ันอยูใ่ นปั จจุบัน ไม่กลับไปเริม ่ ต ้นทีจ ่ ด ุ เริม ่ ต ้นอีก คำาสง่ ั cleartext คือคำำสัง่ ล ้ำงข ้อมูลบริเวณหน ้ำต่ำงของ Commander รูปแบบคำำสัง่ เพียงพิมพ์คำำว่ำ cleartext แล ้ว Enter ก็จะสำมำรถล ้ำงข ้อมูลทีห ่ น ้ำต่ำง Commander ได ้แล ้ว


คำาสง่ ั home คือคำำสัง่ ทีก ่ ำำหนดให ้สำมเหลีย ่ มหรือเต่ำกลับมำอยูท ่ ต ี่ ำำแหน่งเริม ่ ต ้นเสมอแต่จะไม่ลบใด ๆ เหมือนกับ ่ ำำแหน่งเริม clearscreen โดยกำรใช ้คำำสัง่ home อำจจะต ้องใช ้คูก ่ บ ั คำำสัง่ penup เพือ ่ ให ้กำรกลับสูต ่ ต ้นไม่มเี ส ้นทีท ่ ำำให ้ เกิดกำรรบกวนภำยในหน ้ำจอหลัก ทดลองพิมพ์คำำสัง่ เปรียบเทียบคำำสัง่ ระหว่ำงสองชุดคำำสัง่ ดังต่อไปนี้ fd 100 rt 90 fd 100 pu home ชุดคำำสัง่ ที่ 1

fd 100 rt 90 fd 100 home ชุดคำำสัง่ ที่ 2

คำาสง่ ั pe หรือ penerase คือคำำสัง่ สำำหรับกำรลบเส ้นทีเ่ ขียนไปแล ้ว โดยกำรใช ้คำำสัง่ pe แล ้วตำมด ้วยคำำสัง่ อืน ่ ๆ ทีล ่ ำก เส ้นเพือ ่ ทับตำำแหน่งเส ้นทีต ่ ้องกำรลบ เช่น

แล ้วพิมพ์คำำสัง่ เพิม ่ ดังต่อไปนี้

fd 100 rt 90 fd 100 home

pe fd 100 rt 90 fd 100 home ผลคือทำำกำรลบเส ้นตำมคำำสัง่ เดิมทัง้ หมด หลังจำกนีถ ้ ้ำมีคำำสัง่ ใด ๆ เกีย ่ วกับกำรลำกเส ้น จะไม่สำมำรถมองเห็นเส ้นอีก ถึง แม ้เรำจะใช ้คำำสัง่ pd เพือ ่ วำงปำกกำก็ตำม เนือ ่ งจำกคำำสัง่ นีไ ้ ม่ใช่คำำสัง่ pu หำกต ้องกำรให ้เห็นกำรลำกเส ้นอีกครัง้ ต ้องใช ้คำำสัง่ ดังต่อไปนี้ คำาสง่ ั ppt หรือ penpaint คือคำำสัง่ ทีต ่ ้องกำรให ้เห็นเส ้นอีกครัง้ หลังจำกใช ้คำำสัง่ penerase ไปแล ้ว คำาสง่ ั setpensize คือคำำสัง่ ในกำรกำำหนดควำมหนำของลำยเส ้นปำกกำ มีรป ู แบบคำำสัง่ ดังนี้ คำาสง่ ั setpensize [ความกว้างของเส้น ความสูงของเส้น] แต่ใน MSWLOGO ควำมกว ้ำงของเส ้นไม่มผ ี ลต่อขนำด ของเส ้นเลย ดังนัน ้ ขนำดของเส ้นปำกกำจะอยูท ่ ก ี่ ำรกำำหนดขนำดควำมสูงของเส ้นเป็ นหลักแต่จำำเป็ นต ้องใส่คำ่ ใด ๆไว ้ที่ ควำมกว ้ำงของเส ้นเพือ ่ ให ้เป็ นไปตำมรูปแบบของคำำสัง่ ด ้วย มิฉะนัน ้ จะเกิดควำมผิดพลำดขึน ้ เช่น setpensize [1 5] ต ัวอย่าง คำาสง่ ั to bamboo cs setpensize [20 20] fd 20 setpensize [18 18] fd 20 setpensize [16 16] fd 20 setpensize [14 14] fd 20 setpensize [12 12] fd 20 setpensize [10 10] fd 20 setpensize [8 8] fd 20 setpensize [6 6] fd 20 setpensize [4 4] fd 20 setpensize [2 2] fd 20 setpensize [1 1] fd 20 End

่ bamboo ภำพที่ 2.5 ภำพแสดงผลกำรทำำงำนของโปรแกรม ชือ


คำาสง่ ั ht หรือ hideturtle คือคำำสัง่ ซ่อนสำมเหลีย ่ มหรือเต่ำนั่นเอง บำงครัง้ ในกำรวำดรูปหรือกำรแสดงผลบนหน ้ำจอ หลัก รูปสำมเหลีย ่ มดังกล่ำวอำจสร ้ำงควำมรำำคำญ เรำก็สำมำรถใช ้คำำสัง่ ht เพือ ่ ซ่อนไว ้ไม่ให ้เห็น คำาสง่ ั st หรือ showturtle คือคำำสัง่ แสดงรูปสำมเหลีย ่ มหรือเต่ำนั่นเอง คำาสง่ ั setxy คือคำำสัง่ ย ้ำยสำมเหลีย ่ มหรือเต่ำไปยังตำำแหน่งแกน x และ y ตำมทีก ่ ำำหนด มีรป ู แบบคำำสัง่ ดังนี้ setxy ตำาแหน่งแกน x ตำาแหน่งแกน y โดยให ้มองหน ้ำจอหลักถูกแบ่งด ้วยแกน x และแกน y ดังรูป

y

x

-x

-y

ภำพที่ 2.6 ภำพแสดงตำำแหน่ง กำรใช ้คำำสัง่ setxy โดยปกติรป ู สำมเหลีย ่ มหรือเต่ำจะเริม ่ ต ้นทีแ ่ กน x = 0 และแกน y = 0 (0,0) แกน x จะมีระยะออกไปทัง้ แกนทำงบวก และทำงลบข ้ำงละ 500 จุด นัน ้ คือ -500 จนถึง +500 ขณะเดียวกันแกน y ก็จะมีระยะจำกจุดต่ำำ สุดจนถึงจุดสูงทีส ่ ด ุ -500 จนถึง +500 เช่นเดียวกัน ตัวอย่ำงคำำสัง่ เช่น Example (draw a sine wave): repeat 360 [setxy repcount 100*sin repcount]

ภำพที่ 2.7 ก่อนกำรใช ้คำำสัง่ setxy


ภำพที่ 2.8 ใช ้คำำสัง่ setxy จำก ตัวอย่ำง (draw a sine wave): repeat 360 [setxy repcount 100*sin repcount] คำาสง่ ั setx คือคำำสัง่ ในกำรเคลือ ่ นทีเ่ ต่ำไปในแนวแกน x โดยไม่สนในแกน y มีรป ู แบบดังนี้ setx ตำาแหน่งแกน x ซึง่ ค่ำแกน x จะมีระยะจำกจุดเริม ่ ต ้นไปทำงซ ้ำยสูงสุด = -500 และสำมำรถไปทำงขวำ สูงสุด = 500 เช่น setx -300 คือกำรเลือ ่ นเต่ำไปตำมแกน x = -300 ก ้ำว คำาสง่ ั sety คือคำำสัง่ ในกำรเคลือ ่ นทีเ่ ต่ำไปในแนวแกน y โดยไม่สนในแกน x มีรป ู แบบดังนี้ sety ตำาแหน่งแกน y ซึง่ ค่ำแกน y จะมีระยะจำกจุดเริม ่ ต ้นไปทำงด ้ำนล่ำงตำมแนวแกน y สูงสุด = -500 และสำมำรถ ไปทำงด ้ำนบนตำมแนวแกน y สูงสุด = 500 เช่น sety 400 คือกำรเลือ ่ นเต่ำขึน ้ ไปด ้ำนบนตำมแนวแกน y = 400 ก ้ำว ่ั ย กลุม ่ คำาสงเกี ่ วก ับการกำาหนดสี คำาสง่ ั setpencolor คือคำำสัง่ ในกำรกำำหนดสีของเส ้นปำกกำ มีรป ู แบบดังนี้ ี ดง แม่สเี ขียว แม่สน ี ำาเงิน] โดยสีของเส ้นปำกกำเป็ นสีทเี่ กิดจำกกำรผสมสีของแม่สแ ี ดง เขียว setpencolor [ แม่สแ ี ต่ละสีสำมำรถกำำหนดให ้มีคำ่ ตัง้ แต่ 0-255 เช่น setpencolor [255 255 0] เส ้นของปำกกำจะเป็ นสีท ี่ และนำเงิ ้ำ น แม่สแ เกิดจำกกำผสมกันระหว่ำงสีแดงกับสีเขียวตำมนำหนั ้ำ กสีทใี่ ห ้ จำกตัวอย่ำงจะได ้สีเหลือง ตัวอย่ำง คำำสัง่ setpencolor Home setpencolor [255 255 0] fd 100

ภำพที่ 2.9 ใช ้คำำสัง่ setpencolor setpencolor [255 255 0] fd 100


อย่ำงไรก็ตำมเพือ ่ ให ้เิกด ิ ควำมสะดวกในกำรกำำหนดสีของเส ้นปำกกำ ใน MSWLOGO มีกำรกำำหนดค่ำสีมำให ้แล ้วพือ ่ ให ้ ้ ลง โดยเรำอำจจะกำำหนดค่ำสีตำมตำงทีก คำำสัง่ สัน ่ ำำหนดมำให ้เลยแทนกำรใส่คำำสัง่ แบบผสมสี เช่น setpencolor 6 ก็จะมี ค่ำสีเช่นเดียวกับคำำสัง่ setpencolor [255 255 0] ค่ำสี 0 1 2 3 4 5 6 7

ค่ำทีส ่ ง่ ไปจริง [ 0 0 0] [ 0 0 255] [ 0 255 0] [ 0 255 255] [255 0 0] [255 0 255] [255 255 0] [255 255 255]

ค่ำสี 8 9 10 11 12 13 14 15

ค่ำทีส ่ ง่ ไปจริง [155 96 59] [197 136 18] [100 162 64] [120 187 187] [255 149 119] [144 113 208] [255 163 0] [183 183 183]

คำาสง่ ั setfloodcolor คือคำำสัง่ ในกำรกำำหนดสีทจ ี่ ะเทลงในพืน ้ ทีท ่ ม ี่ ก ี รอบ โดยมีรป ู แบบคำำสัง่ ดังนี้ ี ดง แม่สเี ขียว แม่สน ี าเงิ setfloodcolor [แม่สแ ้ ำ น] กำรกำำหนดสีเป็ นกำรกำำหนดนำหนั ้ำ กในกำรผสมแม่สเี ช่นเดียวกัน กับคำำสัง่ setpencolor เพียงแต่เป็ นกำรกำำหนดสีทจ ี่ ะเทลงในกรอบทีต ่ ้องกำร เช่น setfloodcolor [255 0 0] คือ กำำหนดสีเป็ นสีแดงเข ้ม เมือ ่ ต ้องกำรเทลงในกรอบพืน ้ ทีใ่ ด ๆ ต ้องใช ้คำำสัง่ ดังต่อไปนีเ้ พือ ่ กำรเทสี คำาสง่ ั fill คือคำำสัง่ ทีใ่ ช ้ในกำรเทสีลงในกรอบทีต ่ ้องกำร ก่อนทำำกำรเทสี เรำต ้องเลือ ่ นสำมเหลีย ่ มหรือเต่ำไปอยูใ่ นกรอบ พืน ้ ทีท ่ เี่ รำจะเทสีเสียก่อนแล ้วจึงพิมพ์คำำว่ำ fill มิฉะนัน ้ สีอำจถูกเทในพืน ้ ทีอ ่ น ื่ ทีเ่ รำไม่ต ้องกำรได ้ ตัวอย่ำงเช่น cs fd 100 rt 90 fd 100 rt 90 fd 100 rt 90 fd 100 rt 125 pu fd 5 setfloodcolor [255 0 0] fill

;ล ้ำงหน ้ำจอ ; สร ้ำงรูปสีเ่ หลีย ่ ม ;ให ้สำมเหลีย ่ มหันหน ้ำเข ้ำภำยในกรอบ ;ยกปำกกำเพือ ่ ไม่ให ้เกิดส ้น ;เดินเข ้ำไปในกรอบสีเ่ หลีย ่ ม ;กำำหนดสีทจ ี่ ะเทเป็ นสีแดง ;เทสี

ภำพที่ 2.10 กำรใช ้คำำสัง่ fill

คำาสง่ ั setscreencolor คือคำำสัง่ ในกำรกำำหนดสีพน ื้ หลังของหน ้ำจอหลัก โดยมีรป ู แบบคำำสัง่ ดังนี้


ี ดง แม่สเี ขียว แม่สน ี าเงิ setscreencolor [แม่สแ ้ ำ น] เช่น setscreencolor [255 255 0] คือกำรผสมแสงสีแดงกับ แสงสีเขียวทีน ่ ำหนั ้ำ กสี ๆ 255 จะได ้พืน ้ หลังของหน ้ำจอหลักเป็ นสีเหลือง

ภำพที่ 2.11 กำรใช ้คำำสัง่ setscreencolor ให้ทดลองพิมพ์คำาสง่ ั ข้างล้างเพือ ่ ดูผล to bee setfloodcolor [0 0 0] repeat 45 [fd 1 lt 8] rt 90 repeat 20 [fd 1 rt 6] rt 25 repeat 25 [fd 1 rt 5] pu fd 2 lt 90 fd 2 ppt repeat 18 [fd 1 rt 20] pu bk 7 ppt repeat 18 [fd 1 rt 20] pu rt 90 fd 1 fill lt 90 fd 9 fill pu fd 2 rt 90 fd 6 lt 90 ppt repeat 12 [fd 1 rt 9] rt 40 repeat 25 [fd 1 rt 4] lt 110 repeat 20 [fd 1 rt 4] repeat 10 [fd 1 rt 10] rt 30 repeat 12 [fd 1 rt 1] lt 100 repeat 22 [fd 1 rt 6] pu rt 80 fd 3 lt 105 ppt repeat 18 [lt 6 bk 1] pu fd 5 ppt end to beel setfloodcolor [0 0 0] repeat 45 [fd 1 rt 8] lt 90 repeat 20 [fd 1 lt 6] lt 25 repeat 25 [fd 1 lt 5] pu fd 2 rt 90 fd 2 ppt repeat 18 [fd 1 lt 20] pu bk 7 ppt repeat 18 [fd 1 lt 20] pu lt 90 fd 1 fill rt 90 fd 9 fill pu fd 2 lt 90 fd 6 rt 90 ppt repeat 12 [fd 1 lt 9] lt 40 repeat 25 [fd 1 lt 4] rt 110 repeat 20 [fd 1 lt 4] repeat 10 [fd 1 lt 10] lt 30 repeat 12 [fd 1 lt 1] rt 100 repeat 22 [fd 1 lt 6] pu lt 80 fd 3 rt 105 ppt repeat 18 [rt 6 bk 1] pu fd 5 ppt end


to flower cs repeat 5 [ppt ellipsearc 218 50 50 125 pu fd 60 rt 72] bk 100 rt 90 ppt ellipsearc 90 155 65 125 lt 90 pu bk 90 rt 90 ppt repeat 2 [fd 105 rt 90 fd 5 rt 90] lt 90 bk 10 lt 90 bk 10 rt 90 bk 45 rt 90 fd 85 lt 90 fd 45 rt 90 fd 10 lt 90 fd 10 end to flower1 cs ht setfloodcolor [255 255 255] ppt repeat 5 [repeat 2 [repeat 50 [ fd 2 rt 2] rt 80] rt 10 fd 5 setfloodcolor [255 0 0] fill bk 5 rt 15 fd 15 fill bk 15 rt 47] rt 150 repeat 40 [fd 5 rt 1] rt 80 fd 40 repeat 2 [lt 90 fd 5 lt 90 fd 80] lt 90 fd 5 lt 90 fd 10 rt 90 fd 40 lt 90 fd 60 lt 90 fd 40 setfloodcolor [0 0 0] pu lt 100 fd 25 fill rt 100 fd 8 fill fd 45 lt 115 ppt repeat 2 [repeat 50 [fd 2 rt 2] rt 80] rt 115 pu bk 10 rt 15 ppt repeat 2 [repeat 50 [fd 2 rt 2] rt 80] pu rt 10 fd 10 setfloodcolor [0 255 0] fill bk 10 lt 35 fd 10 lt 70 fd 20 fill pu home fd 100 ppt bee fill pu home rt 90 fd 100 lt 90 fd 40 ppt bee fill pu home lt 90 fd 100 rt 90 ppt beel fill ht end

ภำพที่ 2.12 ภำพแสดงผลกำรวำดรูปดอกไม ้ด ้วยภำษำโลโก ้

การเขียนโปรแกรมโดยใช้ Editor


จำกกำรทดลองคำำสัง่ ต่ำง ๆ ทีผ ่ ำ่ นมำเรำจะพบว่ำกำรพิมพ์คำำสัง่ ทีล ่ ะบรรทัดเริม ่ สร ้ำงปั ญหำให ้เรำในกรณีทม ี่ ค ี ำำสัง่ หลำย ๆ คำำสัง่ ร่วมกันเพือ ่ ให ้ได ้ผลตำมทีเ่ รำต ้องกำร มีควำมผิดพลำดง่ำย หำจุดทีต ่ ้องแก ้ไขยำก และไม่สำมำรถนำ ำกลับ มำใช ้ใหม่ได ้ ดังนัน ้ ใน MSWLOGO จึงมีหน ้ำต่ำงทีเ่ รำสำมำรถเขียนคำำสัง่ ได ้อย่ำงง่ำย สะดวก และเรียกกลับมำใช ้ได ้ ตลอดเวลำนั่นคือกำรเขียนโปรแกรมแบบเป็ นขัน ้ ตอน (Procedure) โดยใช ้ Editor ด ้วยกำรคลิ๊ กเมำส์ทเี่ มนู File แล ้วเลือ ่ นแถบแสงเลือกเมนู Edit แล ้วคลิ๊ ก ดังรูป

ภำพที่ 2.13 กำรคลิ๊ กเมำส์ทเี่ มนู File แล ้วเลือ ่ นแถบแสงเลือกเมนู Edit ื่ โปรแกรมทีเ่ รำต ้องกำรสร ้ำง เมือ ่ เข ้ำไปที่ Edit จะมีหน ้ำจอให ้พิมพ์ชอ

ื่ โปรแกรมทีเ่ รำต ้องกำรสร ้ำง ภำพที่ 2.14 ไปที่ Edit จะมีหน ้ำจอให ้พิมพ์ชอ ่ โปรแกรมมีข ้อกำำหนดดังนีค กำรตัง้ ชือ ้ อ ื ่ โปรแกรมต ้องเป็ นภำษำอังกฤษเท่ำนัน  ชือ ้ ่ จะต ้องไม่มวี รรคในชือ ่  ชือ ่ จะต ้องมีตัวพยัญชนะอยูด ่ ทีม  ชือ ่ ้วยเสมอ ไม่สำมำรถตัง้ ชือ ่ แ ี ต่ตัวเลขเพียงอย่ำงเดียว ่ จะต ้องไม่ตรงกับฟั งก์ชน ั่ หรือคำำสัง่ หลักของโลโก ้  ชือ ่ ได ้แล ้ว ก็ทำำกำรคลิ๊ กที่ OK จะมีหน ้ำต่ำงของโปรแกรม Editor ขึน เมือ ่ ตัง้ ชือ ้ มำให ้เขียนโปรแกรมทีต ่ ้องกำรลงไป


ภำพที่ 2.15 แสดงหน ้ำต่ำง Editor ื่ โปรแกรมทีต ่ โปรแกรมจะอยูห จำกรูปข ้ำงบนนี้ แสดงหน ้ำต่ำง Editor ทีม ่ ช ี อ ่ งั ้ ไว ้ โดยชือ ่ ลัง to และปิ ดท ้ำย โปรแกรมด ้วย end เสมอ กำรเขียนคำำสัง่ ต่ำง ๆ จะต ้องเขียนใส่ไว ้ระหว่ำง to และ end ดังต่อไปนี้

ภำพที่ 2.16 แสดงกำรเขียนคำำสัง่ ลงในโปรแกรม Editor เมือ ่ เขียนโปรแกรมเสร็จแล ้วต ้องทำำกำรเก็บไว ้ใน Memory แบบชัว่ ครำวแล ้วออกจำกหน ้ำจอ Editor ด ้วยกำรเลือกเมนู Save and Exit ดังรูปต่อไปนี้

ภำพที่ 2.17 แสดงกำร save คำำสัง่ ลงในโปรแกรม Editor


ื่ โปรแกรมทีเ่ รำเขียนไว ้ทีช ่ งป้ อนคำำ สั่ง เมือ ่ ทำำ กำร Save and Exit แล ้ว จะกลับออกมำสู่หน ้ำจอหลักจำกนั น ้ ให ้พิมพ์ช อ ่ อ ดังรูป

ื่ โปรแกรมทีเ่ รำเขียนไว ้ทีช ่ งป้ อนคำำสัง่ ภำพที่ 2.18 แสดงพิมพ์ชอ ่ อ จำกนัน ้ ทำำกำร Run โปรแกรมทีเ่ รำเขียนไว ้ด ้วยกำรกด Enter หรือใช ้เมำส์คลิ๊ กทีป ่ ม ุ่ Execute โปรแกรมก็จะทำำงำนตำมขัน ้ ่ ตอนทีเ่ รำเขียนไว ้ตัง้ แต่ต ้นจนจบ โปรแกรมตัวอย่ำงนีเ้ ป็ นโปรแกรมวำดรูปสีเหลีย ่ มจัตรุ ัสให ้ผลดังรูป

ภำพที่ 2.19 แสดงโปรแกรมทีเ่ รำเขียนไว ้ กำรบันทึกด ้วยเมนู Save and Exit เป็ นกำรบันทึกเพือ ่ ใช ้งำนชัว่ ครำวเท่ำนัน ้ เมือ ่ ปิ ดโปรแกรม MSWLOGO ลง แล ้วเปิ ดใหม่ เรำจะพบว่ำโปรแกรมทีเ่ รำสร ้ำงไว ้ใน Editor หำยไปทัง้ หมด หำกต ้องกำรเก็บไว ้อย่ำงถำวรจะต ้องทำำกำร บันทึกทีต ่ ัวโปรแกรมหลักอีกครัง้ ดังภำพข ้ำงล่ำง

ภำพที่ 2.20 กำรใช ้คำำสัง่ SaveAs


่ แฟ้ มในช่อง เมือ ่ เลือกคลิกที่ Save As จะได ้หน ้ำต่ำงเพือ ่ ให ้เลือกตำำแหน่งปลำยทำงทีจ ่ ะบันทึกในช่อง Save in และตัง้ ชือ File name แล ้วคลิกทีป ่ ม ุ่ Save เพือ ่ ยืนยันกำรบันทึก

ภำพที่ 2.21 กำรใช ้คำำสัง่ SaveAs ่ ไฟล์เป็ น bamboo ขณะที่ ชือ ่ โปรแกรมทีเ่ รำสร ้ำงไว ้ที่ Editor ชือ ่ bamboo1 นั่นหมำยถึงชือ ่ ข้อส ังเกต ผู ้เขียนตัง้ ชือ ไฟล์ท ี่ ื่ เหมือนกับชือ ่ โปรแกรมทีเ่ รำเขียนไว ้ ขณะเดียวกันไฟล์หนึง่ ไฟล์อำจจะมีหลำยโปรแกรมอยู่ เรำเก็บไม่จำำเป็ นต ้องมีชอ ้ ้ทำำงำนร่วมกับโปรแกรม ่ bamboo2 , bamboo3 และอืน ภำยใน เช่น ผู ้เขียนอำจจะสร ้ำงโปรแกรมเพิม ่ เติมชือ ่ ๆ เพือ ่ ให ่ bamboo ได ้ ครำวนีโ้ ปรแกรมของเรำจะถูกเก็บไว ้อย่ำงถำวร ถึงแม ้จะมีกำรปิ ดกำรใช ้ bamboo1 แล ้วเก็บไว ้ในไฟล์เดิมชือ งำน MSWLOGO ไปแล ้ว เมือ ่ ต ้องกำรเรียกโปรแกรมมำใช ้งำนก็เพียงแต่เข ้ำโปรแกรม MSWLOGO อีกครัง้ หนึง่ แล ้วเลือก เมนู Load ดังรูป

ภำพที่ 2.22 กำรใช ้คำำสัง่ Load เมือ ่ คลิ๊ กทีเ่ มนู Load จะเป็ นกำรดึงไฟล์ทเี่ ก็บไว ้มำใช ้ โดยแสดงไฟล์ทม ี่ น ี ำมสกุล .lgo ดังรูปข ้ำงล่ำงนี้ จำกนัน ้ เลือก ื่ bamboo คลิ๊ กเมำส์ทป ไฟล์ทต ี่ ้องกำร ในทีน ่ ค ี้ อ ื ไฟล์ชอ ี่ ม ุ่ Open ก็จะได ้ไฟล์ดังกล่ำวไปใช ้งำนต่อไป


ภำพที่ 2.23 กำรใช ้คำำสัง่ Load ให้ผเู รียนคียต ์ ัวอย่างโปรแกรม ข้างล่าง ต ัวอย่างที่ 1 : โปรแกรมสร ้ำงรูป 5 เหลีย ่ ม (ควรสร ้ำงไว ้ทีห ่ น ้ำต่ำงของ Editor) to 5Angle fd 100 rt 72 fd 100 rt 72 fd 100 rt 72 fd 100 rt 72 fd 100 end

ผลทีไ่ ด ้

ต ัวอย่างที่ 2 : โปรแกรมสร ้ำงรูป 5 เหลีย ่ มหลำยรูปต่อกัน to 5Angles fd 100 rt 72 fd 100 rt 72 fd 100 rt 72 fd 100 rt 72 fd 100 rt 72 end

fd fd fd fd fd

100 100 100 100 100

rt rt rt rt rt

72 72 72 72 72

fd fd fd fd fd

100 100 100 100 100

rt rt rt rt rt

72 72 72 72 72

fd fd fd fd fd

ผลทีไ่ ด ้

ต ัวอย่างที่ 3 : โปรแกรมสร ้ำงรูปวงรีซ ้อนกันหลำยรูป

100 100 100 100 100

rt rt rt rt rt

72 72 72 72 72

fd fd fd fd fd

100 100 100 100 100


to wow ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 ellipse 30 end

200 200 200 200 200 200 200 200 200 200 200 200 200 200 200 200 200 200 200 200 200 200 200 200

rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt

15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15

ผลทีไ่ ด ้

่ั ย กลุม ่ คำาสงเกี ่ วก ับการทำางานโดยทวไป ่ั ในภำษำโลโก ้ ยังมีคำำสัง่ อืน ่ ๆ อีกมำกมำยทีจ ่ ะช่วยให ้เขียนโปรแกรมเป็ นไปอย่ำงมีประสิทธิภำพ และใช ้งำน โปรแกรมได ้อย่ำงหลำกหลำย ดังต่อไปนี้ ำ้ repeat เป็ นคำำสัง่ ทีต ่ ้องกำรทำำสิง่ ใดๆ ซำตำมจำ ำนวนรอบทีก ่ ำำหนดไว ้ โดยมีรป ู แบบคำำสัง่ ดังนี้ repeat จำานวนรอบ [ สิง่ ทีต ่ อ ้ งการทำาซ้าำ ] เช่น repeat 4 [ fd 100 rt 90 ] ผลก็คอ ื จะได ้รูปสีเ่ หลีย ่ ม โดยคำำ ้ กระชับ สัง่ repeat สำมำรถช่วยลดจำำนวนบรรทัดของกำรเขียนโปรแกรมได ้ ช่วยให ้โปรแกรมมีควำมสัน

fd fd fd fd

100 100 100 100

rt rt rt rt

90 90 90 90

ลดรูป

repeat 4 [ fd 100 rt 90 ]


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

to wow repeat 24 [ ellipse 30 200 rt 15] end

ผลทีไ่ ด ้

wait คือคำำสัง่ เพือ ่ หน่วงเวลำให ้โปรแกรมแสดงผลตำมระยะเวลำทีเ่ รำกำำหนด มีรป ู แบบคำำสัง่ ดังนี้ wait ระยะเวลาในการหน่วง โดยระยะเวลำในกำรหน่วงถูกกำำหนดมำว่ำ 60 = 1 วินำที เช่น wait 120 ผลของ โปรแกรมจะเกิดกำรหน่วงเวลำ 2 วินำที จำกตัวอย่ำงที่ 1 เมือ ่ เรำทำำกำร Run โปรแกรม เรำจะได ้รูป 5 เหลีย ่ มทันที โดยไม่ทันเห็นกำรวิง่ ลำกเส ้นของรูป สำมเหลีย ่ มหรือเต่ำเนือ ่ งจำกคอมพิวเตอร์ทำำงำนด ้วยควำมเร็วสูง ดังนัน ้ หำกต ้องกำรเห็นกำรลำกเส ้นของเต่ำ เรำต ้องใช ้ ่ คำำสัง wait เข ้ำมำช่วย ดังนี้ to 5Angless fd 100 wait fd 100 wait fd 100 wait fd 100 wait fd 100 end

40 40 40 40

rt rt rt rt

72 72 72 72

wait wait wait wait

40 40 40 40

to 5Anglesss repeat 4 [fd 100 wait 40 rt 72 wait 40] fd 100 end ตัวอย่ำงทีใ่ ช ้ wait ร่วมกับ repeat

ตัวอย่ำงทีใ่ ช ้ wait เรำจะเห็นเต่ำวิง่ ทีละ 100 ก ้ำวแล ้วหมุน 72 องศำ อย่ำงชัดเจน make คือกำรกำำหนดค่ำให ้ตัวแปร เพือ ่ ประโยชน์ในกำรกระทำำทำงคณิตศำสตร์ กำรอ ้ำงอิงค่ำ และกำรเปรียบเทียบ โดยมีรป ู แบบดังนี้ ่ x มีคำ่ เท่ำกับ 25 make “ต ัวแปร ค่าต ัวแปร เช่น make “x 25 คือกำรกำำหนดให ้ตัวแปรชือ ค่ำของตัวแปรมีอยู่ 3 ชนิด โดยมีรป ู แบบกำรกำำหนดทีแ ่ ตก ต่ำงกันออกไปดังนี้ 1. ตัวแปรแบบตัวเลขจำำนวนเต็ม (Integer) กำรกำำหนดค่ำ จงจำำไว ้เสมอว่ำกำร หลังตัวแปรเพียงใส่คำ่ ของเลขจำำนวนเต็มลงไปโดยไม่มี ่ make ตัวแปรชือ สัญลักษณ์ใด ๆ ติดอยูด ่ ้วย เช่น make “bamboo 100 ตัวแปร จะต ้องมี ่ นั ่ น คื อ ตั ว แปรชื อ bamboo มีคำ่ เท่ำกับ 100 เครือ ่ งหมำยฟั นหนู 2. ตั ว แปรแบบคำ ำ พู ด (word) คือตัวแปรทีม ่ ล ี ก ั ษณะ ( “ ) ติดอยูก ่ บ ั เป็ นตั ว เลขหรื อ พยั ญ ชนะรวมกั น เป็ นคำ ำ ๆ โดยไม่ มวี รรค ตัวแปรเสมอ แบ่งระหว่ำงพยัญชนะ กำรกำำหนดค่ำหลังตัวแปรต ้องมี เครือ ่ งหมำยฟั นหนู ( “ ) ติดอยูก ่ บ ั ค่ำของมันเช่นกัน ่ เช่น make “project “groups นั่นคือตัวแปรชือ project มีคำำว่ำ groups อยูภ ่ ำยใน 3. ตัวแปรแบบประโยคคำำพูด (list) คือตัวแปรทีน ่ ำ ำประโยคคำำพูดมำเรียงต่อกันโดยมีวรรคแบ่งระหว่ำง word กำร กำำหนดค่ำหลังตัวแปร จะต ้องมีเครือ ่ งหมำยก ้ำมปู [ ] คร่อมค่ำตัวแปรทัง้ หมด เช่น make “y [Hi how are you ?] ่ y มีประโยคคำำว่ำ Hi how are you ? อยูภ ผลทีไ่ ด ้คือตัวแปรชือ ่ ำยใน สังเกตว่ำประโยคดังกล่ำวจะมี word อยู่ 5 ชุด ด ้วยกันโดยมีวรรคคั่น


show เป็ นคำำสัง่ เพือ ่ แสดงผลออกทำงหน ้ำต่ำงของ Commander บริเวณ Re-Call Box โดยส่วนมำกจะแสดงผลค่ำของ ตัวแปร ผลทำงคณิตศำสตร์ ผลทำงตรรกศำสตร์ โดยมีรป ู แบบคำำสัง่ ดังนี้ show ค่าทีต ่ อ ้ งการแสดงออก โดยค่ำทีจ ่ ะแสดงออกทำงหน ้ำต่ำง Commander นีม ้ ล ี ก ั ษณะเช่นเดียวกับกำรกำำหนด ตัวแปร คือค่ำทีเ่ ป็ น คำำพูด (word) ค่ำทีเ่ ป็ น ประโยคคำำพูด (list) และค่ำในตัวแปร เช่น show “Thailand  ผลทีห ่ น ้ำต่ำง Commander จะแสดงคำำว่ำ Thailand show [Good Morning Thailand]  ผลทีห ่ น ้ำต่ำง Commander จะแสดงคำำว่ำ [Good Morning Thailand] make “x “bamboo show :x  ผลทีห ่ น ้ำต่ำง Commander จะแสดงคำำว่ำ bamboo กำรกระทำำใดๆกับตัวแปร จะต ้องมีเครือ ่ งหมำยโคลอน ( : ) ติดกับ ตัวแปรเสมอ ยกเว ้นกำร make ตัวแปรเท่ำนัน ้ ทีใ่ ช ้ฟั นหนู ( “ ) print เป็ นคำำสัง่ ทีใ่ ห ้ผลเช่นเดียวกับ show แต่กำรแสดงผลค่ำแบบ ประโยคคำำพูดจะนำ ำเอำ เฉพำะค่ำภำยในวงเล็บก ้ำมปูออกมำแสดงเท่ำนัน ้ ต่ำงจำก show ทีแ ่ สดงเครือ ่ งหมำยวงเล็บ ก ้ำมปูตด ิ มำด ้วย เช่น print [Are you OK ?]  show [Are you OK ?] 

ผลทีแ ่ สดงออกมำคือ Are you OK ? ผลทีแ ่ สดงออกมำคือ [Are you OK ?]

Label เป็ นคำำสัง่ เพือ ่ แสดงผลออกทำงหน ้ำจอหลัก จะมีลักษณะคำำสัง่ คล ้ำยกับ show และ print เพียงแต่แสดงผลบริเวณ หน ้ำจอหลัก (กรำฟฟิ กส์) ทิศทำงของกำรแสดงผลจะขึน ้ อยูก ่ บ ั ทิศทำงของเต่ำ เช่น rt 90 label [Hello… Are you happy?] จะได ้ผลดังรูปต่อไปนี้

ภำพที่ 2.24 กำรใช ้คำำสัง่ Label


เรำสำมำรถกำำหนดขนำดของตัวอักษรทีจ ่ ะแสดงรวมสีของตัวอักษรได ้ โดยกำรกำำหนดทีเ่ มนูดังรูปต่อไปนี้ เลือกเมนู Set แล ้วเลือ ่ นแถบแสงไปที่ Label Font… แล ้วคลิ๊ ก จะปรำกฏเมนู ใหม่ให ้กำำหนดชนิดของตัวอักษร และ ขนำดของตัวอักษร

เมือ ่ ปรำกฏเมนูใหม่ดังรูป เรำก็จะสำมำรถ เลือกชนิด และขนำดของตัวอักษร แล ้วค ลิ๊ กทีป ่ ม ุ่ OK

ี องปำกกำ ดังรูป ส่วนสีของตัวอักษรสำมำรถกำำหนดทีส ่ ข

เมือ ่ เลือกสีของปำกกำก็คอ ื กำรเลือกสีของ ตัวอักษรทีจ ่ ะ label นั่นเอง แล ้วคลิ๊ ก

่ ค่ำจำกขอบเขตทีก random คือคำำสัง่ สุม ่ ำำหนด มีรป ู แบบคำำสัง่ ดังนี้ ่ โดยคำำสัง่ random จะต ้องใช ้ร่วมกับคำำสัง่ อืน random ขอบเขตของค่าทีต ่ อ ้ งการสุม ่ เพือ ่ แสดงผล เช่น ่ ค่ำออกมำแสดงจำกตัวเลขจำำนวนเต็มจำก 0 – 10 show random 10 คือกำรสุม ่ แสดงค่ำตัวเลขภำยในขอบเขต 0 – 100 จำำนวน 20 ค่ำ repeat 20 [show random 100 ] คือกำรสุม


่ั ย กลุม ่ คำาสงเกี ่ วก ับการสร้างเสียง soundon คือคำำสัง่ ในกำรแสดงเสียงออกทำงลำำโพงของคอมพิวเตอร์ มีรป ู แบบดังนี้ soundon ความถีเ่ สียง โดยควำมถีเ่ สียงมีหน่วยเป็ นเฮิรซ ์ (Hz) มีคำ่ ตัง้ แต่ 20 Hz – 2000 Hz แต่ลำำโพงของ คอมพิวเตอร์ สำมำรถตอบสนองควำมถีไ่ ด ้ดีเพียงตัง้ แต่ 200 Hz – 4000 Hz เท่ำนัน ้ หำกใช ้ค่ำต่ำำ หรือมำกกว่ำนี้ จะได ้ยิน เสียงเบำมำกจนถึงไม่ได ้ยินเลย เช่น soundon 1500 จะให ้ผลเป็ นเสียงออกทำงลำำโพงของคอมพิวเตอร์ทค ี่ วำมถี่ 1500 Hz soundoff คือคำำสัง่ ในกำรหยุดเสียงหลังจำกสัง่ soundon ออกไปแล ้ว รูปแบบคำำสัง่ เพียงพิมพ์คำำว่ำ soundoff แล ้ว Enter เสียงก็จะหยุดดังทันที sound คือคำำสัง่ ในกำรแสดงเสียงทีค ่ ล ้ำยกับ soundon เพียงแต่มก ี ำรกำำหนดควำมยำวนำนลงไปด ้วยเพือ ่ ให ้หยุดแสดง เสียงหลังจำกถึงเวลำทีก ่ ำำหนดโดยไม่ต ้องใช ้คำำสัง่ soundoff หลังจำกนี้ โดยมีรป ู แบบดังนี้ sound [ความถีเ่ สียง ความยาวนาน] โดยควำมถีเ่ สียงมีหน่วยเป็ นเฮิรซ ์ (Hz) มีคำ่ ตัง้ แต่ 20 Hz – 2000 Hz แต่ ลำำโพงของคอมพิวเตอร์ สำมำรถตอบสนองควำมถีไ่ ด ้ดีเพียงตัง้ แต่ 200 Hz – 4000 Hz เท่ำนัน ้ หำกใช ้ค่ำต่ำำ หรือมำกกว่ำ นี้ จะได ้ยินเสียงเบำมำกจนถึงไม่ได ้ยินเลย ส่วนค่ำควำมยำวนำนมีไม่แน่นอนขึน ้ อยูก ่ บ ั ควำมเร็วของคอมพิวเตอร์เครือ ่ ง นัน ้ ๆ ตัวอย่ำงเช่น sound [2000 1000] ได ้มีกำรกำำหนดควำมถีม ่ ำตรฐำนเพือ ่ สร ้ำงเสียงตำมโน ้ตดนตรีไว ้แล ้วดังตำรำงต่อไปนี้ ต ัวโน้ต C (โด) C# D (เร) D# E (มี) F (ฟำ) F# G (ซอล) G# A (ลำ) A# B (ที)

ความถี่ 262 277 294 311 330 349 370 392 415 440 466 494

ต ัวโน้ต C (โด) C# D (เร) D# E (มี) F (ฟำ) F# G (ซอล) G# A (ลำ) A# B (ที)

ความถี่ 523 554 587 622 659 698 740 748 831 880 932 988

ต ัวโน้ต C (โด) C# D (เร) D# E (มี) F (ฟำ) F# G (ซอล) G# A (ลำ) A# B (ที)

ความถี่ 1047 1109 1175 1245 1319 1397 1480 1568 1661 1760 1865 1975

ดังนัน ้ หำกผู ้เรียนมีควำมรู ้ทำงด ้ำนดนตรี ก็จะสำมำรถสร ้ำงเพลงด ้วยคำำสัง่ sound นีไ ้ ด ้อย่ำงไม่ยำกเย็น playwave คือคำำสัง่ เกีย ่ วกับเสียงอีกชนิดหนึง่ แต่เป็ นกำรแสดงเสียงออกทำงกำร์ดเสียงของคอมพิวเตอร์ (Sound Card) ดังนัน ้ เครือ ่ งคอมพิวเตอร์ทม ี่ ี sound card และมีลำำโพงทีต ่ อ ่ กับ sound card เท่ำนัน ้ ทีแ ่ สดงผลของคำำสัง่ นีไ ้ ด ้ โดยมีรป ู แบบคำำสัง่ ดังนี้ playwave “ตำาแหน่งทีม ่ ไี ฟล์เสียงทีม ่ น ี ามสกุล .wav อยู่ flag เช่น playwave “c:\\windows\\bird.wav 1 ไฟล์เสียงชนิดนีเ้ รำสำมำรถหำได ้หรือสร ้ำงขึน ้ มำได ้ง่ำย ๆ เช่นจำกกำรใช ้ Voice Recorder ทีม ่ ใี น Windows ทุก ๆ ั่ เวอร์ชน flag เป็ นค่ำตัวเลขทีต ่ ้องใส่เพือ ่ ควบคุมลักษณะกำรเล่นของเสียง โดยมีคำ่ ดังนี้ : กำรเล่นไฟล์เสียงจะไม่หยุด และคอมพิวเตอร์จะไม่ตอบสนอง คียบ ์ อร์ด และ เมำส์ หรือคำำสัง่ อืน ่ ใด ้ เลย จนกว่ำ จะเล่นไฟล์เสียงเสร็จสิน 1 : คอมพิวเตอร์สำมำรถตอบสนอง คียบ ์ อร์ด เมำส์ และคำำสัง่ อืน ่ ๆ ได ้ขณะทีเ่ ล่นไฟล์เสียงนี้ 2 : ไม่มใี ช ้ 4 : ไม่มใี ช ้ ้ำ ำงต่อเนือ 8 : เป็ นกำรเล่นเสียงซำอย่ ่ ง โดยจะต ้องมีกำรใช ้งำนร่วมกับ flag 1 โดยกำรใส่เครือ ่ งหมำย + ร่วม เข ้ำไป เช่น playwave “c:\\windows\\bird.wav 8+1 ทำำให ้กำรเล่นไฟล์ bird.wav จะเล่น ้ำ ้ำ ำ จนกว่ำจะเล่นไฟล์เสียงใหม่เข ้ำมำ โดยขณะทีเ่ ล่นไฟล์เสียงอยูน วนซำแล ้วซำเล่ ่ ี้ เรำ็ก็ยังคงสำมำรถ ้คี ใช ยบ ์ อร์ด เมำส์ และคำำสัง่ อืน ่ ใดต่อไปได ้ เพรำะมี flag 1 กำำกับอยู่ ้ จึงจะรับคำำสัง่ ใหม่ได ้ แต่หำกเรำกำำหนด flag 16 : จะคล ้ำยกับกำรใช ้ flag 0 คือเล่นไฟล์เสียงจนเสร็จสิน ่ 1 ร่วมลงไปในคำำสัง จะทำำให ้ คอมพิวเตอร์สำมำรถตอบสนองคียบ ์ อร์ด เมำส์ และคำำสัง่ อืน ่ ๆได ้ เช่น “c:\\windows\\bird.wav 1ุ6+1 ข ้อแตกต่ำงระหว่ำง flag 1 กับ flag 16+1 คือ ขณะทีเ่ รำกำำกับ ด ้วย flag 1 ถ ้ำเรำเล่นไฟล์เสียงตัวใหม่เข ้ำไประหว่ำงทีเ่ ล่นไฟล์เก่ำอยูน ่ ั่น โปรแกรมจะหยุดไฟล์เก่ำ ทันทีแล ้วเล่นไฟล์ใหม่แทน หำกเรำกำำกับกำรเล่นด ้วย flag 16+1 โปรแกรมจะเล่นไฟล์เสียงเก่ำจน ้ ก่อนเท่ำนัน เสร็จสิน ้ จึงจะเล่นไฟล์เสียงตัวใหม่ได ้ 0


่ั ย กลุม ่ คำาสงเกี ่ วก ับการร ับค่าจากคียบ ์ อร์ด readchar คือคำำสัง่ ในกำรรับค่ำจำกคียบ ์ อร์ด เป็ นตัวอักษรเพียงตัวเดียว กำรใช ้งำน readchar ไม่สำมำรถใช ้งำนเพียง คำำสัง่ เดียวโดด ๆ ได ้ จำำเป็ นต ้องมีกำรใช ้งำนร่วมกับคำำสัง่ อืน ่ ๆ เช่น show readchar หรือ make “x readchar เป็ นต ้น ตัวอย่ำงกำรใช ้คำำสัง่ show readchar หลังจำกกด Enter จะเกิดหน ้ำต่ำงเล็กๆ เพือ ่ ให ้เรำป้ อนตัว อักษรจำกคียบ ์ อร์ดลงไปเพียง 1 ตัวอักษร แล ้วคลิ๊ ก ปุ่ ม OK โปรแกรมจะแสดงค่ำทีป ่ ้ อนลงในคียบ ์ อร์ดทีห ่ น ้ำต่ำงของ Commander ดังรูป ในทีน ่ ผ ี้ ู ้เขียนป้ อนอักษร A ลงไปจึง แสดงออกมำเป็ น A

้ำ นครัง้ ที่ 2 เมือ ข้อส ังเกต หำกเรำใช ้คำำสัง่ show readchar ซำเป็ ่ กด Enter จะไม่เห็นหน ้ำต่ำงเล็กๆ เกิดขึน ้ มำเพือ ่ ให ้เรำ ่ ป้ อนค่ำอีก เนือ ่ งจำกคำำสังนีจ ้ ะค่ำสะท ้อน (Echo) อยูห ่ นึง่ ตัวอักษร เรำจำำเป็ นต ้องเรียกคำำสัง่ show readchar เป็ นครัง้ ที่ 3 จึงจะเห็นหน ้ำต่ำงเพือ ่ ป้ อนข ้อตัวอักษรอีกครัง้ ในกำรเขียนโปรแกรมใช ้งำนบำงโปรแกรม หำกไม่ระมัดระวังสิง่ เหล่ำนี้ จะทำำให ้โปรแกรมทำำงำนได ้ไม่ดพ ี อ readword คือคำำสัง่ ในกำรรับค่ำจำกคียบ ์ อร์ดคล ้ำยกับ readchar แต่จะเป็ นกำรรับค่ำเป็ นคำำพูด (word) เข ้ำมำ คือ สำมำรถป้ อนได ้มำกกว่ำ 1 ตัวอักษร กำรใช ้งำนคำำสัง่ นีเ้ ช่นเดียวกับ readchar คือต ้องใช ้ร่วมกับคำำสัง่ อืน ่ ๆ เช่น print readword show readword make “x readword ้ ทุก ๆ คำำสัง่ ข ้ำงบนนีจ ้ ะทำำให ้เกิดหน ้ำต่ำงเล็ก ๆ สำำหรับกำรป้ อนค่ำทำงคียบ ์ อร์ดทัง้ สิน ำ้ นครัง้ ที่ 2 ก็จะยังคงมีหน ้ำ ข้อส ังเกต คำำสัง่ readword ไม่มค ี ำ่ สะท ้อน (Echo) ดังนัน ้ หำกเรำใช ้คำำสัง่ readword ซำเป็ ต่ำงเล็ก ๆ ให ้เรำป้ อนค่ำคียบ ์ อร์ดใหม่ลงไป readlist คือคำำสัง่ ในกำรรับค่ำจำกคียบ ์ อร์ดคล ้ำยกับ readchar และ readword แต่จะเป็ นกำรรับค่ำแบบประโยคคำำพูด กำรใช ้คำำสัง่ ต ้องใช ้งำนร่วมกับคำำสัง่ อืน ่ ๆ เช่นกัน และ readlist ก็ไม่มผ ี ลของค่ำสะท ้อน (Echo) ่ั ย กลุม ่ คำาสงเกี ่ วก ับการทำางานตามเงือ ่ นไข if คือคำำสัง่ ทีท ่ ำำงำนแบบมีเงือ ่ นไข มีรป ู แบบคำำสัง่ ดังนี้ if เงือ ่ นไข [สิง่ ทีต ่ อ ้ งทำาเมือ ่ เงือ ่ นไขเป็นจริง] มีควำมหมำยว่ำเมือ ่ โปรแกรมทำำงำนจนถึงคำำสัง่ นี้ จะทำำกำรตรวจสอบ เงือ ่ นไขทีก ่ ำำหนดว่ำเป็ นจริงหรือไม่ ถ ้ำเป็ นจริงตำมเงือ ่ นไข โปรแกรมจะเริม ่ เข ้ำไปทำำตำมคำำสัง่ ในวงเล็บก ้ำมปูจนเสร็จ แต่หำกเงือ ่ นไขเป็ นเท็จ โปรแกรมจะไม่สนใจและไม่ทำำสิง่ ทีอ ่ ยูภ ่ ำยในวงเล็บก ้ำมปูเลย เช่น if 1=1 [print [Yes it is true]] คือ มีเงืน ่ ไขว่ำถ ้ำ 1 มีคำ่ เท่ำกับ 1 ให ้แสดงประโยคว่ำ Yes it is true ที่ หน ้ำต่ำง Commander ในทีน ่ จ ี้ ะมีกำรแสดงประโยค Yes it is true เสมอ เพรำะ 1 มีคำ่ เท่ำกับ 1 เสมอ if readword = “yes [print [Hello.. I am Thai]] คือ มีเงือ ่ นไขว่ำถ ้ำค่ำทีร่ ับจำกคียบ ์ อร์ดมีคำ่ เท่ำกับ yes ให ้แสดง ประโยคว่ำ Hello.. I am Thai เมือ ่ ทำำกำร Run โปรแกรม จะ ปรำกฏหน ้ำต่ำงเล็ก ๆ ให ้ป้ อนค่ำลงไป หลังจำกกดปุ่ ม OK แล ้ว โปรแกรมจะนำ ำค่ำจำกคียบ ์ อร์ดมำเปรียบเทียบกับค่ำ ทีก ่ ำำหนดไว ้คือ yes ถ ้ำตรงกัน ก็จะทำำงำนตำมคำำสัง่ ในวงเล็บ ก ้ำมปูตอ ่ ไป ดังรูป


ข้อส ังเกต ในกำรกำำหนดเงือ ่ นไข readword = “yes คำำพูดว่ำ yes ต ้องใส่เครือ ่ งหมำยฟั นหนูตด ิ ไปด ้วย เพรำะค่ำทีร่ ับ จำกคียบ ์ อร์ดเป็ นค่ำแบบ word ดังนัน ้ เรำต ้องกำำหนดให ้ yes เป็ นค่ำแบบ word โดยกำรใส่เครือ ่ งหมำยฟั นหนูให ้นั่นเอง หำกชนิดของค่ำทีน ่ ำ ำมำเปรียบเทียบไม่เหมือนกัน ผลทีไ่ ด ้จะไม่มท ี ำงเป็ นจริงได ้เลย ifelse คือคำำสัง่ ทีท ่ ำำงำนแบบมีเงือ ่ นไข มีรป ู แบบคำำสัง่ ดังนี้ ifelse เงือ ่ นไข [สิง่ ทีต ่ อ ้ งทำาเมือ ่ เงือ ่ นไขเป็นจริง][สิง่ ทีต ่ อ ้ งทำาเมือ ่ เงือ ่ นไขเป็นเท็จ] มีควำมหมำยคล ้ำยกับคำำสัง่ if เพียงแต่ มีทำงเลือกทีโ่ ปรแกรมต ้องทำำตำมอยู่ 2 ทำงคือ ในวงเล็บก ้ำมปูแรกจะทำำก็ตอ ่ เมือ ่ เงือ ่ นไขเป็ นจริง และใน วงเล็บก ้ำมปูท ี่ 2 จะทำำก็ตอ ่ เมือ ่ เงือ ่ นไขเป็ นเท็จเท่ำนัน ้ ซึง่ เป็ นกำรบังคับโปรแกรมให ้ทำำอย่ำงใดอย่ำงหนึง่ เช่น ifelse readword = “Man [print “Pass] [print “Fail] คือ มีเงือ ่ นไขให ้รับค่ำจำกคียบ ์ อร์ดเพือ ่ เปรียบเทียบ กับคำำว่ำ Man หำกมีกำรป้ อนค่ำตรงกับคำำว่ำ Man โปรแกรมจะแสดงคำำว่ำ Pass ทีห ่ น ้ำต่ำง Commander หำกพิมพ์ นอกเหนือไปจำกคำำว่ำ Man จะแสดงคำำว่ำ Fail แทนที่ for คือคำำสัง่ ทีท ่ ำำงำนวนรอบแบบมีเงือ ่ นไข มีรป ู แบบคำำสัง่ ดังนี้ for [var start end inc] [สิง่ ทีต ่ อ ้ งทำาเมือ ่ เงือ ่ นไขเป็นจริง] โดยเงือ ่ นไขเพือ ่ ควบคุมกำรวนรอบของคำำสัง่ for จะ อยูใ่ นวงเล็บก ้ำมปูชด ุ แรก มีรป ู แบบทีถ ่ ก ู กำำหนดมำดังนี้ ่ ตัวแปร (ไม่ต ้องมีสญ ั ลักษณ์ใดๆ ติดกับตัวแปรในวงเล็บก ้ำมปูชด var = ชือ ุ นี้) start = ค่ำเริม ่ ต ้นของตัวแปร end = ค่ำสุดท ้ำยของตัวแปร inc = ค่ำของตัวแปรทีเ่ พิม ่ ขึน ้ แต่ละรอบ เช่น for [i 2 7 1.5] [print :i] คือกำรทำำงำนแบบวนรอบโดยเริม ่ จำกตัวแปร i มีคำ่ เท่ำกับ 2 ในรอบแรก และมีกำรแสดงค่ำ i ออกมำเท่ำกับ 2 ตำมคำำสัง่ ในวงเล็บก ้ำมปูท ี่ 2 จำกนัน ้ ค่ำ I จะเพิม ่ ขึน ้ ทีละ 1.5 ไปเรือ ่ ยๆ จนกระทั่ง i มีคำ่ มำกกว่ำ 7 ก็จะมีเงือ ่ นไขเป็ นเท็จ และไม่ทำำคำำสัง่ ในวงเล็บก ้ำมปูท ี่ 2 อีก แล ้วหลุดออกจำกชุดคำำสัง่ นีไ ้ ปทำำคำำสัง่ อืน ่ ๆ ต่อไป ดังนัน ้ ผลของคำำสัง่ ชุดนีจ ้ ะแสดงผลออกมำเป็ น 2 3.5 5 6.5 while คือคำำสัง่ ทีท ่ ำำงำนวนรอบแบบมีเงือ ่ นไข มีรป ู แบบคำำสัง่ ดังนี้ while [เงือ ่ นไข][สิง่ ทีต ่ อ ้ งทำาเมือ ่ เงือ ่ นไขเป็นจริง] จะมีรป ู แบบคล ้ำยกับคำำสัง่ for แต่เงือ ่ นไขของ while ไม่มรี ป ู แบบตำยตัว ตัวอย่ำง for ตัวอย่ำงเช่น make “x 0 while [:x < 3 ] [ make “x :x+1 print :x]

; ประกำศตัวแปร x = 0 ; เงือ ่ นไขถ ้ำ ค่ำตัวแปร x < 3 ให ้เพิม ่ ค่ำ x ขึน ้ ไปอีก 1 แล ้วแสดงค่ำ x ออกมำทีห ่ น ้ำต่ำง Commander จำก นัน ้ โปรแกรมจะวนรอบกลับไปตรวจสอบเงือ ่ นไขอีกว่ำ x < 3 หรือเปล่ำ ถ ้ำยังน ้อยกว่ำ 3 ก็ยังคงเพิม ่ ค่ำ x และแสดงค่ำออกทำงหน ้ำต่ำง Commander ไปเรือ ่ ย ๆ จนกระทั่ง x มีคำ่ ไม่น ้อยกว่ำ 3 จึงจะหยุดกำรทำำงำน

do.while คือคำำสัง่ ทีท ่ ำำงำนวนรอบแบบมีเงือ ่ นไข มีรป ู แบบคำำสัง่ ดังนี้ do.while [สิง่ ทีต ่ อ ้ งทำาเมือ ่ เงือ ่ นไขเป็นจริง][เงือ ่ นไข] จะทำำงำนคล ้ำยกับคำำสัง่ while เพียงแต่ตำ่ งกันตรงที่ do.while จะเริม ่ ทำำงำนในวงเล็บก ้ำมปูแรกก่อน แล ้วจึงจะตรวจสอบเงือ ่ นไขทีหลัง ดังนัน ้ กำรพิจำรณำใช ้งำนว่ำจะใช ้ while หรือ do.while จะขึน ้ อยูก ่ บ ั เงือ ่ นไขทีต ่ ้องกำรผลออกมำนั่นเอง ตัวอย่ำงเช่น make “x 0 do.while [make “x :x+1 print :x] [:x < 3] ผลทีไ่ ด ้คือ 1 2 3 do.until คือคำำสัง่ ทีท ่ ำำงำนวนรอบแบบมีเงือ ่ นไข มีรป ู แบบคำำสัง่ ดังนี้


do.until [สิง่ ทีต ่ อ ้ งทำาเมือ ่ เงือ ่ นไขเป็นเท็จ][เงือ ่ นไข] จะคล ้ำยกับคำำสัง่ do.while เพียงแต่ในกำรทำำงำนจะทำำใน วงเล็บก ้ำมปูแรกก็ตอ ่ เมือ ่ มีเงือ ่ นไขเป็ นเท็จเท่ำนัน ้ ตัวอย่ำงเช่น make “xyz 10 do.until [ print :xyz make “xyz :xyz-2 ][:xyz<0]

; ประกำศตัวแปร xyz = 10 ; แสดงผลค่ำ xyz ; ลดค่ำ xyz ลงครัง้ ละ 2 ; ตรวจสอบว่ำ xyz < 0 หรือไม่ ถ ้ำไม่ใช่ก็จะวนรอบไป ทำำใหม่ ; สังเกตว่ำ รูปแบบกำรพิมพ์ในวงเล็บคำำสัง่ แรก คำำสัง่ ต่ำง ๆ ไม่จำำเป็ นต ้องอยูภ ่ ำยในบรรทัดเดียวกันก็ได ้ แต่เมือ ่ มีกำรปิ ดวงเล็บก ้ำมปูแรกแล ้วนัน ้ ต ้องมีวงเล็บ เงือ ่ นไขต่อกันภำยในบรรทัดเดียวกันเลย มิเช่นนัน ้ โปรแกรมจะฟ้ องมีควำมผิดพลำดเกิดขึน ้

ผลทีไ่ ด ้คือ 10 8 6 4 2 0

่ั ย กลุม ่ คำาสงเกี ่ วก ับเวลา ั่ ตัวหนึง่ ทีด time คือคำำสัง่ หรือฟั งก์ชน ่ งึ ค่ำออกมำจำกฐำนเวลำของเครือ ่ งคอมพิวเตอร์เครือ ่ งนัน ้ ๆ คำำสัง่ time ไม่ ้งำนร่ ่ ่ สำมำรถทำำงำนเพียงลำำพังได ้ ต ้องใช วมกับคำำสังแสดงผล หรือคำำสังเก็บค่ำอืน ่ ๆ เช่น show time , print time หรือ make “t time เป็ นต ้น ตัวอย่ำงเช่น เมือ ่ เรำใช ้คำำสัง่ show time แล ้ว Enter จะปรำกฏผลทีห ่ น ้ำต่ำง Commander ดังรูป

Item 1

item 2

item 3

item 4

item 5

จะปรำกฏ แสดงวัน เดือน วันที่ เวลำขณะนัน ้ ปี ค.ศ. ตำมลำำดับ time มีคำ่ แบบประโยคคำำพูด (list) มี ทัง้ หมดด ้วยกัน 5 word เรำเรียกเสียใหม่วำ่ มี 5 item แต่ละ item จะถูกคั่นด ้วยวรรค ดังนัน ้ หำกเรำต ้องกำรแสดงค่ำ item ใด item หนึง่ เท่ำนัน ้ เรำสำมำรถระบุ item ในกำรแสดงผลได ้ เช่น show item 4 time คือ ต ้องกำรแสดงผล item 4 ของ time ก็จะได ้เฉพำะค่ำเวลำออกมำ 14:56:11 ั่ time จะมีบทบำทมำกเมือ ฟั งก์ชน ่ เรำเริม ่ มีกำรเขียนโปรแกรมทีใ่ ช ้ฐำนเวลำเข ้ำมำเกีย ่ วข ้อง ซึง่ จะกล่ำวถึงงำนประยุกต์ใน บทต่อ ๆ ไป ั่ ในกำรตรวจสอบคำบเวลำจำกจุดเริม ้ สุดโปรแกรม มีควำมละเอียดสูงอยูใ่ นหลัก timemilli คือคำำสัง่ หรือฟั งก์ชน ่ ต ้นจนสิน มิลลิวน ิ ำที (1/1000 วินำที) เรำสำมำรถนำ ำมำใช ้ในกำรตรวจสอบระยะเวลำในกำรประมวลผลของโปรแกรมทีเ่ รำเขียนไป ว่ำใช ้ระยะเวลำในกำรทำำงำนเท่ำไร ตัวอย่ำงเช่น make "start timemilli repeat 36 [ellipse 100 200 rt 5] show timemilli - :start

ให้ผเู ้ รียนทดลองคียต ์ ามต ัวอย่างข้างล่าง

; กำำหนดค่ำเริม ่ ต ้นให ้ตัวแปรเป็ นเวลำ ณ.ตอนเริม ่ ต ้น ; ทำำรูปวงรีซ ้อนกัน 36 รูป ; แสดงระยะเวลำในกำรทำำงำน โดยนำ ำค่ำเวลำปั จจุบัน – ค่ำเวลำทีเ่ ริม ่ ต ้น หน่วยเป็ น มิลลิวน ิ ำที ผลคือ 8189 แต่บำงครัง้ จะได ้ไม่เท่ำกันเนือ ่ งจำกคอมพิวเตอร์ ทำำงำนด ้วยควำมเร็วสูง และกำรประมวลผลคำำสัง่ Logo จะทำำงำนได ้ช ้ำกว่ำโปรแกรมอืน ่ ๆ ทำำให ้เวลำทีเ่ รำจับ ในหลัก มิลวิ น ิ ำทีจะมีควำมผิดพลำดบ ้ำง


ต ัวอย่าง โปรแกรมแสดงเวลำบนหน ้ำจอหลัก ่ โปรแกรม timeshow ; ชือ ; ล ้ำงหน ้ำจอ ยกปำกกำ ซ่อนเต่ำ ; กำำหนดให ้ตัวแปร x = 0

to timeshow cs pu ht make "x 0 do.until [ make "y item 4 time cs setxy -100 0 rt 90 label :y ][:x=1] end

; ; ; ; ; ;

กำำหนดให ้ตัวแปร y = ค่ำเวลำในคอมพิวเตอร์ขณะนัน ้ ล ้ำงหน ้ำจอ เคลือ ่ นทีเ่ ต่ำไปยังตำำแหน่งทีจ ่ ะเริม ่ ต ้นเขียน หันหันเต่ำเพือ ่ label อักษรในแนวนอน label ค่ำของเวลำออกทำงหน ้ำจอหลัก ถ ้ำตัวแปร x = 1 ให ้ออกจำกกำรวนรอบ จบกำรทำำงำน

ภำพที่ 2.25 กำรใช ้คำำสัง่ แสดงเวลำบนหน ้ำจอหลัก ต ัวอย่าง โปรแกรมแสดงเวลำบนหน ้ำจอหลักพร ้อมทัง้ กำรตัง้ เวลำ to timeshow2 cs pu ht make "x 0 do.until [ make "y item 4 time cs setxy -100 0 rt 90 label :y if :y = “10:30:00 [ clean label [Bye Bye] make “x 1

; ; ;

่ โปรแกรม timeshow2 ชือ ล ้ำงหน ้ำจอ ยกปำกกำ ซ่อนเต่ำ กำำหนดให ้ตัวแปร x = 0

; ; ; ; ; ; ; ;

กำำหนดให ้ตัวแปร y = ค่ำเวลำในคอมพิวเตอร์ขณะนัน ้ ล ้ำงหน ้ำจอ เคลือ ่ นทีเ่ ต่ำไปยังตำำแหน่งทีจ ่ ะเริม ่ ต ้นเขียน หันหันเต่ำเพือ ่ label อักษรในแนวนอน label ค่ำของเวลำออกทำงหน ้ำจอหลัก ถ ้ำค่ำเวลำ = 10:30:00 ให ้ล ้ำงหน ้ำจอ แสดงคำำว่ำ Bye Bye กำำหนดค่ำตัวแปร x = 1 เพือ ่ ให ้เงือ ่ นไขกำรวนรอบเป็ นจริง หลังจำกเวลำตรงกับค่ำเวลำทีต ่ งั ้ ไว ้

] ][:x=1] end

; ถ ้ำตัวแปร x = 1 ให ้ออกจำกกำรวนรอบ ; จบกำรทำำงำน

ภำพที่ 2.26 กำรใช ้คำำสัง่ แสดงเวลำบนหน ้ำจอหลัก โปรแกรม timeshow2 แสดงคำำว่ำ Bye Bye ต ัวอย่าง โปรแกรมสร ้ำงรูปดอกไม ้เรขำคณิต


to flower cs ht pu setxy -200 200 setpencolor [255 0 0] pd repeat 36 [ ellipse 30 100 rt 10] pu setxy -200 -200 setpencolor [0 255 0] pd repeat 36 [ repeat 4 [fd 100 rt 90] rt 10] pu setxy 200 200 setpencolor [0 0 255] pd make "x 10 repeat 36 [ circle :x make "x :x+2] pu setxy 200 -200 setpencolor [255 0 255] pd make "y 10 repeat 200 [fd :y rt 90 make "y :y+1] pu setxy 0 0 setpencolor [0 255 255] pd repeat 36 [ ellipse 30 100 rt 10] setpencolor [255 255 0] make "x 10 repeat 36 [ circle :x make "x :x+2] end

; ; ; ; ; ;

่ flower โปรแกรมชือ ล ้ำงหน ้ำจอ ซ่อนเต่ำเพือ ่ ไม่ให ้รกสำยตำ ยกปำกกำเพือ ่ ไม่ให ้เกิดเส ้นขณะย ้ำยเต่ำ ย ้ำยเต่ำไปที่ x = -200 , y = 200 กำำหนดสีปำกกำเป็ นสีแดง แล ้ววำงปำกกำ สร ้ำงรูปดอกไม ้วงรี

; สร ้ำงดอกไม ้กลีบสีเ่ หลีย ่ ม

; สร ้ำงดอกไม ้รูปวงกลม

; สร ้ำงดอกไม ้รูปสีเ่ หลีย ่ มเขำวงกต

; สร ้ำงดอกไม ้วงรี ซ ้อนดอกไม ้วงกลม

ภำพที่ 2.27 โปรแกรมสร ้ำงรูปดอกไม ้เรขำคณิต

ต ัวอย่าง โปรแกรมสร ้ำงรูปดอกไม ้เรขำคณิต แบบแสดงกำรหน่วงเวลำ


to flower3 cs ht pu setxy -200 200 setpencolor [255 0 0] pd repeat 36 [ ellipse 30 100 rt 10 wait 2] pu setxy -200 -200 setpencolor [0 255 0] pd repeat 36 [ repeat 4 [fd 100 rt 90] rt 10 wait 2] pu setxy 200 200 setpencolor [0 0 255] pd make "x 10 repeat 36 [ circle :x make "x :x+2 wait 2] pu setxy 200 -200 setpencolor [255 0 255] pd make "y 10 repeat 200 [fd :y rt 90 make "y :y+1 wait 1] pu setxy 0 0 setpencolor [0 255 255] pd repeat 36 [ ellipse 30 100 rt 10 wait 2] setpencolor [255 255 0] make "x 10 repeat 36 [ circle :x make "x :x+2 wait 2] end

; ; ; ; ; ;

่ flower3 โปรแกรมชือ ล ้ำงหน ้ำจอ ซ่อนเต่ำเพือ ่ ไม่ให ้รกสำยตำ ยกปำกกำเพือ ่ ไม่ให ้เกิดเส ้นขณะย ้ำยเต่ำ ย ้ำยเต่ำไปที่ x = -200 , y = 200 กำำหนดสีปำกกำเป็ นสีแดง แล ้ววำงปำกกำ สร ้ำงรูปดอกไม ้วงรี โดยมี wait

; สร ้ำงดอกไม ้กลีบสีเ่ หลีย ่ ม

; สร ้ำงดอกไม ้รูปวงกลม

; สร ้ำงดอกไม ้รูปสีเ่ หลีย ่ มเขำวงกต

; สร ้ำงดอกไม ้วงรี ซ ้อนดอกไม ้วงกลม

ภำพที่ 2.28 โปรแกรมสร ้ำงรูปดอกไม ้เรขำคณิต แบบแสดงกำรหน่วงเวลำ

ต ัวอย่าง โปรแกรมสร ้ำงรูปวงรีหมุน พร ้อมเปลีย ่ นสีแบบ Random


to science cs setpensize [2 2] make "x 0 do.until [ repeat 36 [ make "a random 255 make "b random 255 make "c random 255 setpencolor (list :a :b :c) ellipse 40 150 rt 10 wait 5

; ; ; ;

่ โปรแกรม science ชือ ล ้ำงหน ้ำจอ กำำหนดขนำดเส ้นปำกกำ กำำหนด x = 0

; ; ; ; ; ;

้ำ ทำำซำสร ้ำงวงรี 36 รูป ่ นำหนั สุม ้ำ กสีแดงก็บไว ้ใน a ่ นำหนั สุม ้ำ กสีเขียวเก็บไว ้ใน b ่ นำหนั สุม ้ำ กสีนำเงิ ้ำ นเก็บไว ้ใน c ่ ตำมนำหนั กำำหนดสีปำกกำแบบสุม ้ำ กสี สร ้ำงรูปวงรี แล ้วหมุนไปเรือ ่ ยๆ ด ้วยมุม 10 องศำ

] ][:x=1] End

ภำพที่ 2.29 สร ้ำงรูปวงรีหมุน พร ้อมเปลีย ่ นสีแบบ Random คำาสง่ ั เกีย ่ วก ับการสร้างปุ่ม และการทำางานของปุ่ม buttoncreate คือคำำสัง่ ในกำรสร ้ำงปุ่ ม เพือ ่ นำ ำไปใช ้งำนในกำรควบคุมด ้วยเงือ ่ นไขกำรกดปุ่ ม มีรป ู แบบคำำสัง่ ดังนี้ buttoncreate “parent “name “label xpos ypos width height [callback] อธิบำยได ้ดังนี้ “parent “name “label xpos ypos width height [callback]

่ ของหน ้ำต่ำงทีจ เป็ นชือ ่ ะใส่ปมคำ ุ่ ำสัง่ ลงไป ่ ของปุ่ มคำำสัง่ ทีส เป็ นชือ ่ ร ้ำงขึน ้ มำ เป็ นตัวอักษรหรือป้ ำยฉลำกทีจ ่ ะพิมพ์ใส่ทป ี่ มคำ ุ่ ำสัง่ ตำำแหน่งของปุ่ มทีจ ่ ะสร ้ำงในแกน x ตำำแหน่งของปุ่ มทีจ ่ ะสร ้ำงในแกน y ควำมกว ้ำงของปุ่ มคำำสัง่ ควำมยำวของปุ่ มคำำสัง่ สิง่ ทีต ่ ้องกำรทำำเมือ ่ มีกำรใช ้เมำส์คลิ๊ กทีป ่ มคำ ุ่ ำสัง่

ตัวอย่ำงเช่น buttoncreate “main “bamboo “Click -20 0 50 30 [sound [1500 100]] ผลทีไ่ ด ้แสดงดังรูป

ปุ่ มคำำสัง่ จะมีป้ำยฉลำกว่ำ Click เมือ ่ ใช ้เมำส์ ่ คลิ๊ ก ทีป ่ มคำ ุ่ ำสังจะเกิดเสียงดังด ้วยคำำสัง่ sound นั่นเอง เมือ ่ ต ้องกำรลบปุ่ มคำำสัง่ ออก จำกหน ้ำจอหลัก เรำไม่สำมำรถลบหรือล ้ำง ปุ่ มคำำสัง่ ด ้วยคำำสัง่ cs หรือ clean แต่ต ้อง ลบด ้วยคำำสัง่ ดังต่อไปนี้ buttondelete เป็ นคำำสัง่ ลบปุ่ มคำำสัง่ ทีป ่ รำกฏอยูห ่ ลังจำกใช ้คำำสัง่ buttoncreate ไปแล ้ว โดยมีรป ู แบบคำำสัง่ ดังนี้


่ ของปุ่ มคำำสัง่ ให ้ตรงกับชือ ่ ทีต buttondelete “name คือต ้องเรียกชือ ่ งั ้ ไว ้ในคำำสัง่ buttoncreate เช่น จำกคำำสัง่ ื่ ปุ่ มคำำสัง่ ว่ำ bamboo เมือ buttocreate ทีก ่ ล่ำวมำมีชอ ่ ต ้องกำรลบเรำจะใช ้คำำสัง่ คือ buttondelete “bamboo แล ้ว Enter รูปปุ่ มคำำสัง่ ก็จะหำยไป ต ัวอย่าง โปรแกรมสร ้ำงปุ่ มคำำสัง่ คลิ๊ กเพือ ่ สร ้ำงรูปวงกลมขนำดต่ำง ๆ และทีต ่ ำำแหน่งต่ำง ๆ to clickbutton buttoncreate "window "bamboo "Circle -10 0 70 40 [ pu คือ make "x random 1000 บนจอ make "y random 1000 setxy :x :y make "z random 200 pd circle :z ] buttoncreate "window "project "Clear -400 -200 70 40 [ cs buttondelete "bamboo buttondelete "project ] end

; สร ้ำงปุ่ มคำำสัง่ โดยมีป้ำยฉลำกว่ำ Circle ; สิง่ ทีต ่ ้องทำำหลังจำกกำรคลิ๊ กเมำส์ทป ี่ มคำ ุ่ ำสัง่ ; กำรสร ้ำงวงกลมขนำดต่ำงๆ ทีต ่ ำำแหน่งต่ำงๆ

; สร ้ำงปุ่ มคำำสัง่ สำำหรับล ้ำงหน ้ำจอ

ภำพที่ 2.30 ปุ่ มคำำสัง่ คลิ๊ กเพือ ่ สร ้ำงรูปวงกลมขนำดต่ำง ๆ และทีต ่ ำำแหน่งต่ำง ๆ

แบบฝึ กห ัดบทที่ 2


1. ให ้ผู ้เรียนทดลองเขียนคำำสัง่ พืน ้ ฐำนภำษำโลโก ้ทีไ่ ด ้ศึกษำมำจำกใบควำมรู ้ FD 100 มีลก ั ษณะอย่ำงไร โดยให ้ ทำำลงบนเครือ ่ งคอมพิวเตอร์ 2. ให ้ผู ้เรียนทดลองใช ้คำำสัง่ CS หรือ ClearScreen แล ้วให ้ทดลองใช ้คำำสัง่ บนเครือ ่ งคอมพิวเตอร์แล ้วสังเกตกำรณ์ ทำำงำนหน ้ำจอ 3. ให ้ผู ้เรียนทดลองใช ้คำำสัง่ LT แล ้วทดลองทำำบนเครือ ่ งคอมพิวเตอร์แล ้วดูผลกำรทำำงำนของคำำสัง่ 4. ให ้ผู ้เรียนทำำกำรป้ อนโปรแกรมโดยใช ้ Menu Edit ดังนี้ 1. ใช ้เมำส์คลิ๊ กไปที่ Edit

2. จะเห็นภำพหน ้ำจอ

3. ให ้ผู ้เรียนเขียนโปรแกรมจำกภำพ

4. ให ้ผู ้เรียนคลิ๊ กไปที่ File แล ้วไปที่ Save and Exit


5. ให ้ผู ้เรียนทดลองกำรบันทึกข ้อมูลลงในฮำร์ดดิสหรือแผ่นเก็บข ้อมูลหรืออุปกรณ์กำรเก็บข ้อมูล (บันทึกข ้อมูลอย่ำง ถำวร) 1. ให ้ผู ้เรียนเลือ ่ นเคอร์เซอร์ไปที่ Save

2. ให ้คลิ๊ กที่ Save เพือ ่ เลือกปลำยทำงทีจ ่ ะบันทึกลงใน Save in ่ แฟ้ มลงในช่อง File Name และคลิกทีป 3. ให ้ผู ้เรียนตัง้ ชือ ่ ม ุ่ Save เพือ ่ ยืนยันกำรบันทึก

6. ให ้ผู ้เรียนทดลองใช ้คำำสัง่ PD และ PU แล ้วให ้สังเกตทีโ่ ปรแกรมภำษำโลโก ้และให ้ผู ้เรียนทดลองเขียนคำำสัง่ ดังนี้ FD 50 PU FD 50 PU FD 50 ่ ว่ำ Exam2_7 7. ให ้ผู ้เรียนทดลองใช ้คำำสัง่ PE และคำำสัง่ PPT โดยให ้พิมพ์ตัวอย่ำงข ้ำงล่ำงนีโ้ ดยใช ้ชือ


To exam2_7 FD 150 RT 90 FD 100 RT 90 FD 150 RT 90 FD 150 PE BK 50 End แล ้วให ้ผู ้เรียนดูในกำรแสดงผลในภำษำโลโก ้ แล ้วให ้ผู ้เรียนเขียนคำำสัง่ ต่อจำกภำพทีป ่ รำกฏบนจอด ้วยคำำสัง่ PPT แล ้วให ้สังเกตพร ้อมทัง้ ทำำควำมเข ้ำใจ 8. ให ้ผู ้เรียนทดลองเขียนคำำสัง่ PX โดยใช ้ตัวอย่ำงคำำสัง่ PX FD 100 BK 50 เมือ ่ ทดลองแล ้วให ้ผลทีห ่ น ้ำจอ คอมพิวเตอร์ในภำษำโลโก ้ 9. ให ้ผู ้เรียนใช ้คำำสัง่ ทีเ่ ห็นแล ้วเติมคำำลงในช่องว่ำพร ้อมทัง้ อธิบำย Right…………………………. อธิบำยรูปทีเ่ ป็ น.................................................................................... ........................................................................................................ ........................................................................................................ Left……………………………. อธิบำยรูปทีเ่ ป็ น.................................................................................... ........................................................................................................ ........................................................................................................ 10. ให ้ผู ้เรียนสร ้ำงขัน ้ บันไดจำำนวน 3 ขัน ้ แล ้วให ้ทดลองใช ้คำำสัง่ FX, PE, PPT เพือ ่ หำข ้อแตกต่ำง 11. ผู ้เรียนศึกษำ คำำสัง่ Setpencolor[0 0 0] โดยให ้ผู ้เรียนทดลองเขียนคำำสัง่ ลงบนโปรแกรมภำษำโลโก ้ดังนี้ To Exam2_8 FD 100 RT 90 FD 100 RT 90 FD 100 RT 90 FD 100 RT 90 RT 45 PU FD 20 Setfloodcolor[ 0 255 0] Fill End 12. ให ้ผู ้เรียนศึกษำเรือ ่ งคำำสัง่ Print และ Show พร ้อมทัง้ ให ้ผู ้เรียนทดลองใช ้ทัง้ สองคำำสัง่ โดยให ้เขียนคำำสัง่ โดยให ้ เขียนคำำสัง่ ดังข ้ำงล่ำงนีแ ้ ล ้วให ้ผู ้เรียนทำำควำมเข ้ำใจ Print [Hello how are you Make “a 0 print :a Show [Hello how are you] 13. ให ้ผู ้เรียนทดลองคียค ์ ำำสัง่ ข ้ำงล่ำงดังต่อไปนี้ ลงในภำษำโลโก ้ To Joke Repeat 4 [Fd 100 Rt 90] End To Joker Jokey Wait 10 Clean Rt 10 Joker End To Jokey Repeat 6[Joke Rt 60] End แล ้วให ้ผู ้เรียนพิมพ์คำำสัง่ Jokey แล ้วให ้ดูกำรทำำงำนของโปรแกรม 14. ให ้ผู ้เรียนทดลองคียค ์ ำำสัง่ ข ้ำงล่ำงต่อไปนีล ้ งในโปรแกรมภำษำโลโก ้แล ้วให ้เรียกโปรแกรมทีล ่ ะโปรแกรม


To A Fd Bk Bk Fd Rt Fd Bk Fd

100 100 100 100 90 100 200 100

End To B Ht Cs Repeat 360[Circle 100 RT 5 A Wait 10 C] Fd 100 Bk 100 Bk 100 Fd 100 Rt 90 Fd 100 Bk 200 Fd 100 End To C Pe Fd 100 Bk 100 Bk 100 Fd 100 Rt 90 Fd 100 Bk 200 Fd 100 Ppt End แล ้วให ้ผู ้เรียนสังเกตดูกำรทำำงำนของโปรแกรม 15. ให ้ผู ้เรียนคียต ์ ำมคำำสัง่ ตัวซอร์สโปรแกรมทีใ่ ห ้แล ้วให ้สังเกตกำรณ์ทำำงำนของโปรแกรม To Flow : Round Repeat : Round [Clean Ht Plot Rt 15 Wait 15] End To Plot Repeat 6[Square Rt 60] End To Square Repeat 4[Fd 100 Rt 90] End

Profile for apinya chuethong

การใช้งานโปรแกรมภาษาโลโก้เบื้องต้น  

การใช้งานโปรแกรมภาษาโลโก้เบื้องต้น

การใช้งานโปรแกรมภาษาโลโก้เบื้องต้น  

การใช้งานโปรแกรมภาษาโลโก้เบื้องต้น

Profile for peerat
Advertisement