18 October 2020

Learn to Code 1 - เฉลยแบบฝึกหัด Adjusting Your Algorithm

เฉลยแบบฝึกหัด Learn to Code 1

บทที่ 7 Algorithms

แบบฝึกหัด Adjusting Your Algorithm


โจทย์ Adjust your algorithm to navigate around extra blocks.

คำแปล จงปรับแก้ลำดับการเรียงชุดคำสั่งของคุณเพื่อนำทางไปรอบๆ บล็อกพิเศษ





เฉลย 

func navigateAroundWall() {

    

    if !isBlockedRight {

        turnRight()

        moveForward()

    }

    else if isBlockedRight && !isBlocked {

        moveForward()

    }

    else if isBlocked && isBlockedRight {

        turnLeft()

        moveForward()

    }

    

}


func rightHandRule() {

    

    if !isBlockedRight { 

        turnRight()

        moveForward()

        

    } else if !isBlocked {   

        moveForward()

        

    } else if isBlockedRight {   

        turnLeft()

        

    }

    

}


while !isOnClosedSwitch {

    rightHandRule()

    if isOnGem {

        collectGem()

    }

}

toggleSwitch()




ขอบคุณภาพจาก Swift Playgrounds

-- ดีบี --