วันพฤหัสบดีที่ 21 มิถุนายน พ.ศ. 2555

คำสั่งพื้นฐานเกี่ยวกับภาษา Logo


คำสั่งพื้นฐาน
ในบางครั้งการพิมพ์คำสั่งยาวมากทำให้เสียเวลา เราสามารถเขียนคำสั่งย่อ (Shortcut Commands) ได้ดังนี้
FD
หมายถึง
Forward
BK
หมายถึง
Back
RT
หมายถึง
Right
LT
หมายถึง
Left
Home
-
Home
CS
หมายถึง
ClearScreen
HT
หมายถึง
Hide Turtle
ST
หมายถึง
Show Turtle
นอกจากนี้ยังมีคำสั่งเพื่อการใช้งานอื่น ๆ อีกดังตารางต่อไปนี้
คำสั่ง
Shortcut
ลักษณะการทำงาน
forward mfd nเคลื่อนเต่าไปข้างหน้าจำนวน หน่วย
backward mbk nเคลื่อนเต่าถอยหลังจำนวน หน่วย
right nrt nหันเต่าไปทางขวามือเป็นมุม n องศา
left nlt nหันเต่าไปทางซ้ายมือเป็นมุม n องศา
repeat n_เป็นคำสั่งวนซ้ำ เช่น สร้างรูปสี่เหลี่ยมจัตุรัส repeat 4 [fd 50 rt 90]
circle m_รูปแบบของคำสั่งเขียนรูปวงกลมขนาด m หน่วย
arc n m_รูปแบบของคำสั่งเขียนส่วนโค้ง n องศา ขนาด m หน่วย
ellipse n m_รูปแบบของคำสั่งเขียนรูปวงรี แนวแกน x แกน y
hideturtlehtซ่อนเต่า
showturtlestแสดงเต่า
clearscreencsล้างหน้าจอและนำเต่ากลับสู่ตำแหน่ง Home
clean_ล้างหน้าจอแต่เต่ายังอยู่ที่เดิม
home_นำเต่าสู่ตำแหน่ง Home แต่ไม่ลบหน้าจอ
cleartextctลบรายการคำสั่งที่เคยใช้ในหน้าต่าง commander
penuppuยกปากกาขึ้นทำให้เวลาเต่าเคลื่อนที่จะไม่มีเส้นเกิดขึ้น
pendownpdวางปากกาลงทำให้เวลาเต่าเคลื่อนที่จะเกิดเส้นพร้อมกันไปด้วย
penerasepeเปลี่ยนปากกาเป็นยางลบ
penreversepxcauses the pen to erase over existing lines, otherwise draw
penpaintpptเปลี่ยนยางลบกลับเป็นปากกา
fence_keeps the turtle from wrapping or going off the edge of the window
window_keeps the turtle from wrapping and allows it to go out of the window
wrap_makes the turtle wrap around the screen when it gets to one edge
setpensize [n n]_ตั้งค่าขนาดของปากกา ตามความกว้างและความสูงของเส้น
setscreencolor [n n n]setsc [n n n]ตั้งค่าสีพื้นหลัง
setpencolor [n n n]setpc [n n n]ตั้งค่าสีปากกา
setfloodcolor [n n n]setfc [n n n]ตั้งค่าสี ที่จะระบาย ถ้าใช้คำสั่ง fill ระบายสี
fill_ระบายสีลงในพื้นที่ที่เต่าอยู่ ด้วยสีที่ตั้งค่าในคำสั่ง setfc [n n n]
setpos [n n]_เคลื่อนย้ายเต่าสู่พิกัด x, y ที่กำหนดให้.
setx n or sety nsetxy m nเคลื่อนย้ายเต่าสู่พิกัด x หรือพิกัด y ที่กำหนดให้.
pos or xcor or ycor_outputs the x and y or x or y position of the turtle
setheading nseth nตั้งค่าให้เต่าหันไปทางทิศอะไรหรือทำมุมกี่องศา (seth 0 = สั่งให้เต่าหันขึ้น)
towards [n n]_จะให้ค่ามุมที่เต่าจะต้องหันไปยังตำแหน่ง x, y ที่ป้อนเข้าไป
to procedure_การกำหนดชื่อกระบวนความ
edit procedure_เปิดหน้าต่างสำหรับแก้ไข หรือพิมพ์กระบวนความ
:variable_name_ตัวอย่างเช่น square :size เป็นการกำหนดตัวแปร :size สำหรับกระบวนความ square
playwave _ตัวอย่างการเรียกเสียงเพลง playwave "c:\\windows\\tada.wav 1+8
bitloadเรียกรูปภาพ file *.BMP ตัวอย่าง bitload "c:\\pengin.bmp
playwave [] 0หยุดคำสั่งเสียงเพลง
buttoncreateคำสั่งสร้างปุ่ม
perspectiveทำภาพสามมิติ

การเขียนโปรแกรมสั่งงานคอมพิวเตอร์


การเขียนโปรแกรมสั่งงานคอมพิวเตอร์
        การทำงานใด ๆ ของคอมพิวเตอร์จะทำตามลำดับขั้นตอนคำสั่งที่ได้วางไว้ เพื่อให้เกิดความเข้าใจในรูปแบบของโปรแกรมสั่งงานคอมพิวเตอร์ ในที่นี้สมมติคอมพิวเตอร์เป็นเสมือนหุ่นยนต์ตัวหนึ่งซึ่งมีหน้าที่ปฏิบัติตามคำสั่งของเราอย่างเคร่งครัด
        หุ่นยนต์ตัวนี้อยู่ในโลกที่ไม่ตื่นเต้นเหมือนอย่างโลกของเรา โลกของหุ่นยนต์ไม่มีภูเขา ไม่มีแม่น้ำ ไม่มีโรงภาพยนตร์ ไม่มีร้านค้า ฯลฯ
        แผนที่เมืองที่หุ่นยนต์อยู่เป็นแผ่นแบน ๆ มีทิศตามมาตรฐาน คือ เหนือ ใต้ ตะวันออก ตะวันตก โลกของหุ่นยนต์มีขอบเขตไม่จำกัด ทิศเหนือและใต้อยู่ในแนวแกน y โดยมีขอบเขตไม่จำกัด ทำนองเดียวกับทิศตะวันออกและทิศตะวันตกซึ่งอยู่ในแนวแกน x ก็มีขอบเขตไม่จำกัด
        ดังนั้นโลกของหุ่นยนต์จึงเปรียบเทียบเสมือนถนนและซอยที่ตัดกันเป็นตารางสี่เหลี่ยม โดยถนนจะลากขึ้นไปตามแนวเหนือใต้ ส่วนซอยจะตัดแยกจากถนนออกไปในแนวตะวันออก ตะวันตก มุมหรือจุดตัดจะอ้างการตัดกันระหว่างถนนกับซอย ซึ่งเป็นจุดตัดเหมือนตารางหมากรุก หุ่นยนต์ จะอยู่ที่จุดตัดเหล่านี้ซึ่งมีพิกัด (x,y) และจะหันหน้าได้ 4 ทิศเท่านั้น เมืองของหุ่นยนต์ ดังรูป
งานของหุ่นยนต์ คือ สิ่งที่เราสั่งให้หุ่นยนต์ทำ เช่น ต้องการให้หุ่นยนต์ไปยังจุดตัดที่มีพิกัด (5,6) ในการสั่งงานหุ่นยนต์เราต้องทราบ
สถานะของหุ่นยนต์ ว่า ตำแหน่งเริ่มต้นของหุ่นยนต์อยู่ที่ใด และหันหน้าไปทางทิศใด หรือถ้าต้องการให้หุ่นยนต์ไปเก็บลูกบอล
ก็ต้องทราบว่าลูกบอลอยู่ที่ใด และที่สำคัญที่สุดคือ จะต้องทราบภาษาที่หุ่นยนต์เข้าใจ
       ในขั้นเริ่มต้นเพื่อให้เข้าใจวิธีการสั่งงานหุ่นยนต์ กำหนดคำสั่งพื้นฐานที่หุ่นยนต์สามารถเข้าใจมี 4 คำสั่ง ดังนี้

       เดิน   เป็นคำสั่งให้หุ่นยนต์เคลื่อนที่ไปข้างหน้าตามทิศที่มันหันหน้าไป 1 ช่อง และจะคงทิศทางเดิม      ซ้ายหัน   เป็นคำสั่งให้หุ่นยนต์หันซ้าย 90 องศา โดยตัวหุ่นยนต์จะยังคงอยู่ที่เดิม
      เก็บ   เป็นคำสั่งให้หุ่นยนต์หยิบลูกบอล ณ ตำแหน่งที่ยืนอยู่ใส่ลงในถุง ถ้าตรงจุดที่หุ่นยนต์อยู่ไม่มีลูกบอลก็จะมีข้อผิดพลาดเกิดขึ้น แต่ถ้ามีลูกบอลหลายลูกจะสุ่มเลือกมาใส่ถุงลูกเดียว
      วาง   เป็นคำสั่งให้หุ่นยนต์หยิบลูกบอลจากในถุงไปวางในตำแหน่งที่ยืนอยู่ แต่ถ้าหุ่นยนต์ได้รับคำสั่งนี้ขณะที่ไม่มีลูกบอล
อยู่ในถุงก็จะเกิดข้อผิดพลาด