ผลต่างระหว่างรุ่นของ "01204223/รายละเอียดเกี่ยวกับงานบอร์ด"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
แถว 12: แถว 12:
  
 
== เป้าหมายของงานย่อยต่าง ๆ ==
 
== เป้าหมายของงานย่อยต่าง ๆ ==
 +
 +
รายละเอียดของ method ที่เขียนนั้น จะระบุใน doctest ของโจทย์แต่ละข้ออยู่แล้ว  สำหรับหน้านี้จะอธิบายภาพรวมคร่าว ๆ เท่านั้น
  
 
=== b1 ===
 
=== b1 ===
แถว 19: แถว 21:
 
=== b5 ===
 
=== b5 ===
 
=== b6 ===
 
=== b6 ===
 +
 +
ตัวอย่างการเรียกใช้ <tt>__init__</tt> จากคลาสที่เรา inherite มา
 +
 +
class Robot(GamePiece):
 +
    def __init__(self,r,c,target):
 +
        GamePiece.__init__(self,r,c)
 +
        # ..... your other initialization code here
 +
 
=== b7 ===
 
=== b7 ===

รุ่นแก้ไขเมื่อ 04:05, 1 กรกฎาคม 2556

ในส่วนแบบฝึกหัด b1 - b7 เราจะพัฒนาโปรแกรมสำหรับเกมหนีหุ่น ซึ่งมีรายละเอียดของเกมเป็นดังนี้

เกมหนีหุ่น Robots เป็นเกมคลาสสิก ทดลองเล่นบน browser ได้จาก[1] ในเกมนี้ ผู้เล่นจะเดินหนีหุ่น โดยที่หุ่นจะเคลื่อนที่ไปในทิศต่าง ๆ ที่จะเข้าใกล้ผู้เล่นให้ได้มากที่สุด ถ้าเคลื่อนที่ชนกันหุ่นก็จะตายไป

คลาส

คลาสที่เราจะเขียนคือคลาส Board, GamePiece, Player และ Robot

  • คลาส Board จะเป็นคลาสหลักที่เก็บเบี้ย (GamePiece) ในเกมทั้งหมด และรับผิดชอบการแสดงผลตารางเกม
  • คลาส GamePiece จะเป็นคลาสฐานของเบี้ยในเกม เบี้ยจะทราบตำแหน่งของตัวเอง และสามารถบอกกับ board ได้ว่าจะให้แสดงผลเป็นอะไร
  • คลาส Player และ Robot จะ inherit มาจากคลาส GamePiece โดยมีการแสดงผลเป็น X สำหรับ player และ @ สำหรับ Robot

เป้าหมายของงานย่อยต่าง ๆ

รายละเอียดของ method ที่เขียนนั้น จะระบุใน doctest ของโจทย์แต่ละข้ออยู่แล้ว สำหรับหน้านี้จะอธิบายภาพรวมคร่าว ๆ เท่านั้น

b1

b2

b3

b4

b5

b6

ตัวอย่างการเรียกใช้ __init__ จากคลาสที่เรา inherite มา

class Robot(GamePiece):
    def __init__(self,r,c,target):
        GamePiece.__init__(self,r,c)
        # ..... your other initialization code here

b7