You are on page 1of 34

MSWLogo

ความหมายของโลโก
1. ภาษาสําหรับการเขียนโปรแกรมซึ่งเปนอนุพันธของภาษา
LISP(ภาษาสําหรับงานปญญาประดิษฐ)
2. ภาษาสําหรับการสอนกระบวนการเรียนรูและการคิดของผูเรียน
3. ภาษาที่ชวยใหเขาใจหลักการเขียนโปรแกรมของภาษาคอมพิวเตอร
และการทํางานที่เกี่ยวของกับคอมพิวเตอรไดงายขึ้น
4. ภาษาที่สงเสริมความสามารถทางดานวิทยาศาสตรและคณิตศาสตร
โดยสรางแนวคิดในการแกไขปญหาและการพิสูจนแนวคิด
5. ภาษาที่นําไปใชกับสาขาอื่นเชนดนตรี ภาษาศาสตร ศิลปะ
คณิตศาสตร
ความเปนมาของภาษาโลโก
โลโกเปนภาษาคอมพิวเตอรสําหรับเด็ก ที่พัฒนาโดย ดร.เซยมัวร พาเพิรต
(Seymour Papert) และคณะ จากสถาบันเทคโนโลยีแมสซาซูเสตต
สหรัฐอเมริกา (Massachusettes institute of technology
or M.I.T.) พาเพิรตพัฒนาภาษาโลโกขึ้นโดยใชแนวทางของภาษาลิสป (lisp)
ซึง่ เดิมเปนภาษาที่ใชดําเนินการกับรายการขอมูล และตอมากลายเปนภาษาที่นิยมใชงาน
ในงานประดิษฐ (Artificial Intelligence or AI) ซึง่ เปนวิชาการที่
เกี่ยวกับการทําใหคอมพิวเตอรทํางานหรือคิดไดเหมือนมนุษย
ลักษณะเดนของภาษาโลโก คือ การใชกราฟกที่เรียกวา กราฟกเตา( Turtle
graphics) ใชภาพเตาในการเปนสื่อกลางอยูบนจอภาพ และเตายังมีปากกาเปน
อาวุธอีกดวย
แถบเมนูมีคําสั่งตาง ๆ ดังนี้
File Bitmap Set Zoom Help
องคประกอบหลักของแถบเมนู
1. แถบชื่อของโปรแกรมจะบอกเพียงวาขณะนี้ทานกําลังใชโปรแกรม
ภาษาโลโกอยู
2. แถบเมนูเปนแถบที่ใชเก็บคําสั่งตาง ๆ ในการทํางานประกอบไป
ดวยคําสั่งตาง ๆ ไดแก File Bitmap Set Zoom Help
3 ปุมควบคุมหนาตางจะเหมือนของ Window ทั่ว ๆ ไปคือ จะ
ประกอบดวยสวนเก็บหนาตางมาไวมี่ Task Bar ปุมยอ/ขยายหนาตาง
และปุมสําหรับปดหนาตาง
องคประกอบหลักของแถบเมนู
4. สวนแสดงผลกราฟฟกเปนสวนที่แสดงผลงานที่เตาทําตามคําสั่ง
ของเรา เตาจะเชื่อฟงทําตามเราสั่งตอเมื่อเปนคําสั่งที่ถูกตองเทานั้น ถาเปน
คําสั่งไมถูกตอง เตาจะไมทําและจะถามเราในสวนแสดงผลขอความวาที่คุณ
สั่งมานะทําไมไดจะใหทําอยางไร
5. ชองปอนคําสั่ง เปนสวนที่รับคําสั่งจากคนเขาไปเพื่อใหเตาทํางาน
ได เมื่อสั่งเขาไปแลวจะไปแสดงผลในสวนแสดงผลกราฟฟก
องคประกอบหลักของแถบเมนู
6. สวนแสดงผลขอความ เปนสวนที่เครื่องคอมพิวเตอรจะแสดง
Text มาในชองนี้ หรือแสดงคําสั่งเกาในชองนี้ ในชองนี้บางครั้งถาเรา
ไมไดปรับเปลี่ยนภาษาไวอาจมีปญหาในเรื่องของการแสดงผลภาษาไทย
7. แผงปุมควบคุมเปนแผงที่ทําหนาที่ในการควบคุมการทํางานของ
คอมพิวเตอร การใชงานแผงนีจ้ ะตองเอา mouse มาคลิกเพื่อใหปุม
ตาง ๆ ทํางาน แตคําสั่งบางคําสั่งสามารถกด ENTER ไดเลย บาง
คําสั่งจะใหใชเมื่อตองการหยุดชั่วคราว ซึ่งเรามักจะใชเมื่อมีการ RUN
โปรแกรมที่เขียนขึ้นมา
องคประกอบหลักของแถบเมนู
8. เตาโลโก จะมีรูปรางเปน สามเหลี่ยม จะทํางานตามที่เรา
สั่ง เตาเองทําหนาที่เดินไป และมีปากกาติดไปดวย เมื่อสั่งใหเตา
เดินไปเตาจะลากปากกาไปตามทางเดินดวยทําใหไดรูปภาพขึ้นมา
แตก็สามารถสั่งใหเตายกปากกาไดเหมือนกัน
การเดินทางของเตาโลโก
การเดินทางของเตาโลโกนั้นจะสามารถเดินทางขึ้นไปไดมาก
ที่สุด 500 จุด และจะสามารถไปทางขางๆได 500จุด

ตัวอยางภาพจากโปรแกรมภาษาโลโก
การเก็บงานไวเพื่อใหเอาไปใชงาน
การเก็บงานไวเพื่อใหเอาไปใชงานหรือเพื่อเอามาทํางานตอในครั้ง
ตอไป มีการเก็บงานได 2 แบบคือ
1 การ save ที่เมนู File เปนการเก็บงานที่เปนการเก็บงานที่ได
สรางเปนกระบวนความ (Procedure) ไวหรือจะเรียกงาย ๆ คือเปน
งานที่เขียนในลักษณะของโปรแกรมที่จะเอาไปใชตอไป
2 การเก็บงานที่เปบแบบ รูปภาพ ซึ่งจะตองเก็บงานที่เมนู
bitmap จะเปนรูปภาพมาแสดงใหดูเลยเมื่อLoad file มาใชงาน
การเก็บงานไวเพื่อใหเอาไปใชงาน
การ save ในแบบแรกเปนการ save ทีต่ องใชบอย ๆ
ในขณะที่เขียนขบวนการหรือในขณะที่สรางโปรแกรม
(Procedure) เมื่อเขียนไปครั้งหนึ่ง ๆ นั้นอาจจะไม
สามารถทํางานจนเสร็จเรียบรอยหรือทํางานแลวแตยังตองแกไข ก็
ตองเก็บงานไวเพื่อทําตอไป ก็ตองใชในการเก็บงาน(Save) ที่
เมนู File นี่เอง
การเก็บงานไวเพื่อใหเอาไปใชงาน
สวนในการ เก็บงานแบบที่สองคือแบบที่เก็บเปนรูปภาพเวลา
ที่เราเรียกใชงานใหมก็เรียกไดจากการ Load เหมือนกันเมื่อ
Load แลวก็จะไดเปนรูปภาพออกมาเลยโดยตรง ไมสามารถไป
แกไขรูปภาพนั้นไดอีกแลว
ในการใชงานภาษาโลโก มักจะใช save ในการเขียน
โปรแกรมเปนสวนใหญเพื่อนํามาแกไข ดัดแปลงใหตัวโปรแกรม
ของเปนไปตามที่ตองการ
การตั้งคา
• การเปลี่ยนขนาดปากกา
Set Æ Pensize
• การเลือกขนาดตัวอักษร มี 2 แบบ คือ
1. Label Font
2. Commander Font
การตั้งคา
• การเลือกสีของการเลือกสีของปากกา
Set Æ PenColor
การเลือกสีของปากกา จะมีสีหลัก 8 สี และสามารถกําหนดเองไดจากการปรับ
Scroll bar ของตารางแมสีดานขวา
• การเลือกสีของ Flood Color
คําสัง่ ในการกําหนดคาสีทตี่ องการ Set Æ Flood Color
• การเลือกสีหนากระดานทํางาน
Set Æ Screen Color
การตั้งคา
• การขยายและลดขนาดหนาตางแสดงผลกราฟก
Zoom Æ In
Zoom Æ Out
Zoom Æ Normal
ปุมคําสั่งพิเศษ
• Execute จะทําตามคําสั่งที่พิมพในชอง Input ทุกครั้ง
เมื่อกด Enter
• Status เปนปุมแสดงสถานะขอมูลของเตาโลโกขณะทํางาน
เปนการแสดงผลแบบหนาตาง Pop up
• Trace เวลาทดสอบโปรแกรมหาขอผิดพลาดของโปรแกรมที่
กําลังเขียนกําลังเขียน คลิกที่ปุม untrace ยกเลิกการแสดงผล
ในชอง Output/Command-Recall List
ปุมคําสั่งพิเศษ
• Halt ใชในเวลาตองการใหโลโกหยุดประมวลผลทันทีที่
ตองการ เมื่อหยุดการทํางานแลวโลโกจะรอรับคําสั่งใหม
• Reset ใชในการลบขอมูลที่ปรากฏบนกระดานทํางานทั้งหมด
และเริ่มตนการทํางานใหม
ปุมคําสั่งพิเศษ
• Step ใชในการตรวจสอบการทํางานของโปรแกรมทีละ
ขั้นตอนเพื่อเปนขอมูลในการแกไขโปรแกรมที่มีขอผิดพลาด เมื่อ
ตองการยกเลิกคําสั่งนี้ใหชี้เมาสที่ปุม Unstep (จะแสดง
หนาตาง pop up ของคําสั่ง Step)
• Pause ใชเมื่อตองการหยุดการใชโปรแกรมชั่วคราวเพื่อ
ตรวจสอบเปลีย่ นแปลงคาตัวแปรและอื่น ๆ เมื่อชี้เมาสไปคลิกที่
ปุม pause จะมีหนาตางทํางานเพื่อใหเปลี่ยนคาตัวแปรในชอง
Input ตามที่ตองการ
ปุมคําสั่งพิเศษ
• Edall จะใชงานเมื่อตองการเรียกหนาตาง editor ขึ้นมา
เพื่อเขียนและแกไขโปรแกรมคําสั่งที่กําลังทํางานอยูหรือสราง
โปรแกรมใหม
คําสั่งภาษาโลโก
คําสั่งเหลานี้เปนคําสั่งพื้นฐานของภาษาโลโกที่ทํางานบน
Windows อาจมีความแตกตางจากภาษาโลโกที่ทํางานบน
DOS อยูบางเพราะบางคําสั่งไมสามารถใชงานไดเลย และบาง
คําสั่งก็สามารถทํางานได
คําสั่ง วิธีสั่ง ผลที่ได
FD FD ตามดวยจํานวนเลขทีจ่ ะใหเตาเคลือ่ นทีไ่ ป เตาจะเดินหนาไปเทาจํานวนตัวเลขทีเ่ ราสั่งลงไป
CS CS จะลบหนาจอที่เราเขียนไวออกไป แลวมาตั้งตนที่บาน
RT RT ตามดวยตัวเลขคาของมุม เตาเลี้ยวขวา เปนมุมตามจํานวนเลขทีก่ ําหนด
LT LT ตามดวยตัวเลขคาของมุม เตาเลี้ยวซาย เปนมุมตามจํานวนเลขทีเ่ รากําหนด
HOME HOME เตากับบาน มาตั้งตนที่บาน
PE PE เตาทําตัวเปนยางลบ เดินไปลบเสนที่วาดไว
PPT PPT เตากับมาทําหนาที่ปากกาอีกครั้งหนึ่ง
PU PU เตายกปากกาขึน้ เดินไปโดยไมวาดเสน
PD PD เตาวางปากกาลง วาดเสนไดอีกครั้งหนึ่ง
REPEAT REPEAT ตามดวยจํานวนครั้ง เตาทําคําสั่งนั้นซ้ําตามจํานวนครั้งที่สั่งไว
CIRCLE CIRCLE ตามดวยตัวเลขรัศมีของวงกลม เตาวาดรูปวงกลม โดยมีรัศมีเทากับตัวเลขทีส่ ั่งไว
เตาสรางเสียง ออกทางลําโพงของคอมพิวเตอร โดยใชตัวเลขเปน 2 ขุด
SOUND SOUND [ตัวเลขชุดที่ 1 ตัวเลขชุดที่ 2]
แลวแตกําหนด ตองทดลองทําดูเอง
เตาเคลือ่ นทีไ่ ป ตัวเลขตัวแรกเคลือ่ นไปตามแกน X และตัวเลขตัวที่สองสั่ง
SETPOS SETPOS [ตัวเลขชุดที่ 1 ตัวเลขชุดที่ 2]
ใหเคลือ่ นทีไ่ ปตามแกน Y
ED ED "คําสั่ง เตาสรางโปรแกรมยอย หรือคําสั่งที่สั่งโดยตัวผูใชสรางขึ้นมาเอง
SETPC ตัวเลขตั้งแต 1-255 และมีการใชคําสั่งนี้อีกแบบหนึ่งคือ
SETPC ใชตัวเลข 3 ชุด เชน SETPC [000 125 255] โดยเลขแตละชุดไม เตาเปลี่ยนสีของปากกา ตองลองทดลองเอง
เกิน 255
SETPEN
SETPENSIZE [ตัวเลขชุดที่ 1 ตัวเลขชุดที่ 2] เตาเปลี่ยนขนาดของปากกา(ตัวเลขมีขอจํากัดดวยครับ
SIZE
SETFC ตัวดวยตัวเลขตั้งแต 1-255 และลักษณะการสั่ง
SETFC เตาเปลี่ยนสีที่จะนําเอามาละบายลงในพื้นที่
เหมือนกับ SETPC
FILL FILL กําหนดใหเตาเทสีหรือระบายสีลงในพื้นที่ที่กําหนด
การสรางรูปสี่เหลี่ยมจัตุรัส

• กอนการสรางรูปสี่เหลี่ยมจัตุรัสจะตองมีการวางแผนลําดับขั้นตอน
กอน
• ตัวอยางการทํา Flow chart ของการสรางรูปสี่เหลี่ยมจัตุรัส
การสรางรูปสี่เหลี่ยมจัตุรัส
จาก Flowchart จะสามารถนํามาทําเปนรูปดวยคําสัง่ ดังนี้
1. สรางเสนตรงตามจุดที่ตองการ ( fd …)
2. หมุนขวาหรือซาย 90 องศา ( rt 90 , lt 90)
3. สรางเสนตรงตามจุดที่ตองการอีก ( fd …)
4. หมุนขวาหรือซาย 90 องศาอีก ( rt 90 , lt 90)
5. สรางเสนตรงตามจุดที่ตองการอีกครั้ง ( fd …)
6. หมุนขวาหรือซาย 90 องศาอีกครั้ง ( rt 90 , lt 90)
7. สรางเสนตรงตามจุดที่ตองการอีกเปนครั้งสุดทาย ( fd …)
8. หมุนขวาหรือซาย 90 องศาอีกเปนครั้งสุดทาย ( rt 90 , lt 90)
การสรางรูปสี่เหลี่ยมจัตุรัส
หมายเหตุ
ถาในขั้นตอนที่ 2 นักเรียนเลี้ยวซาย 90 องศา นักเรียนตอง
ทําเชนเดียวกันในขั้นตอนที่ 4 ,6 และ 8 คือ นักเรียนตองเลี้ยว
ซาย 90 องศาในขั้นตอนที่ 4,6 และ 8
แตถาในขั้นตอนที่ 2 นักเรียนเลี้ยวขวา 90 องศา นักเรียน
ตองทําเชนเดียวกันในขั้นตอนที่ 4 ,6 และ 8 คือ นักเรียนตอง
เลี้ยวขวา 90 องศาในขั้นตอนที่ 4,6 และ 8
การสรางรูปสี่เหลี่ยมจัตุรัส
• จากการที่นักเรียนไดสรางรูปสี่เหลี่ยมจัตุรัสแลวจะสังเกตไดวา
นักเรียนตองทํางานซ้ําไปซ้ํามาจึงไดทีการพัฒนาโปรแกรมขึ้นมา
ใหมีคําสั่งใหมอีกคําสั่งคือคําสั่ง Repeat
• คําสั่ง Repeat นั้นจะใชกันมากและใชกันบอยครั้งในการวาด
รูปในโปรแกรมภาษาโลโก ลักษณะของคําสั่ง คําสั่ง Repeat
คือ
การสรางรูปสี่เหลี่ยมจัตุรัส
• วิธีสั่ง พิมพ repeat แลวตามดวยจํานวนครั้งที่ตองการใหมี
การทําซ้ํา แลวตามดวยคําสั่งตางๆที่ตองการใหมีการทําซ้ํา ใน
[…]
• ผลที่ได เตาทําคําสั่งนั้นซ้ําตามจํานวนครั้งที่สั่งไว
• ตัวอยาง repeat 4 [ fd 25 ]
การสรางรูปสี่เหลี่ยมจัตุรัส
• ตัวอยางการใชคําสั่ง Repeat
ใหนักเรียนลองพิมพ
Repeat 4 [ rt 90 fd 100]
บันทึกผลที่ได
จากตัวอยางนี้เราจะเห็นไดวาภาพที่ไดนั้นก็มีลักษณะเชนเดียวกับ การ
เขียนภาพรูปสี่เหลี่ยมจัตุรัส และก็ทําใหเราประหยัดเวลาในการสรางรูปแต
ละรูปโดยที่เราแคพิมพเพียงบรรทัดเดียว แทนที่จะพิมพซ้ําไปซ้ํามาถึง 8
บรรทัด
การใชคําสั่ง Repeat
• การใชคําสั่ง Repeat เปนการใหเตาทําซ้ําในคําสั่งนั้น ๆ มี
รูปแบบการสั้งดังนี้
repeat 3[fd 100 rt 90]
สั่งใหทํา 3 ครั้ง โดยใหทําตามที่สั้งไวในวงเล็บ ในที่นี้
คือสั่งใหเดินหนา 100 เลี้ยวขวา 90 องศา ไมวาเราจะเอา
คําสั่งอะไรมาใสไวในวงเล็บ เตาก็จะทํางานใหตามจํานวนครั้งที่
เราสั่งไป
การทําภาพในแบบตาง ๆ
• ภาพกราฟกหกเหลี่ยม
repeat 6[fd 50 rt 60]
การทําซ้ํา ๆ หลายรูป
repeat 36[repeat 3[fd 90 rt 120]
rt 10]
การทําภาพในแบบตาง ๆ
1. repeat 30[fd 150 rt 360/30]
2. repeat 60[fd 150 rt 360/60]
3 repeat 5[fd 150 rt 360/5]
4 repeat 8[fd 150 rt 360/8]
5. repeat 9[fd 150 rt 360/9]
6 repeat 20[fd 150 rt 360/20]
7 repeat 10[fd 150 rt 386/10]
การสรางรูปสามเหลี่ยมดานเทา
วิธีที่ 1 แบบธรรมดา
สรางเสนตรงตามจุดที่ตองการอีก ( fd …)
หมุนขวาหรือซาย 120 องศา ( rt 120 , lt 120)
สรางเสนตรงตามจุดที่ตองการอีกครั้ง ( fd …)
หมุนขวาหรือซาย 120 องศาอีกครั้ง ( rt 120 , lt 120)
สรางเสนตรงตามจุดที่ตองการอีกเปนครั้งสุดทาย ( fd …)
หมุนขวาหรือซาย 120 องศาอีกเปนครั้งสุดทาย ( rt 120 , lt 120)
การสรางรูปสามเหลี่ยมดานเทา
จากวิธีที่ 1 เราจะเห็นไดวามีการทําซ้ําไปซ้ํามาถึง 3 รอบคือ
รอบที่ 1
สรางเสนตรงตามจุดที่ตองการอีก ( fd …)
หมุนขวาหรือซาย 120 องศา ( rt 120 , lt 120)
รอบที่ 2
สรางเสนตรงตามจุดที่ตองการอีกครั้ง ( fd …)
หมุนขวาหรือซาย 120 องศาอีกครั้ง ( rt 120 , lt 120)
รอบที่ 3
สรางเสนตรงตามจุดที่ตองการอีกเปนครั้งสุดทาย ( fd …)
หมุนขวาหรือซาย 120 องศาอีกเปนครั้งสุดทาย ( rt 120 , lt 120)
การสรางรูปสามเหลี่ยมดานเทา
เราจึงมีการทําวิธีที่ 2 คือมีการใชคําสั่ง Repeat
Repeat 3 [fd … rt 120]
จากวิธีนี้ก็จะสามารถสรางรูปสามเหลี่ยมไดเชนกัน

You might also like