//決まった数だけ集める@コードを学ぼう2 let totalGems = randomNumberOfGems var g = 0 //関数rGo(), r=Right //行き止まり、かつ、左に壁がある場合 //右に向いて前進 func rGo() { if isBlockedLeft && isBlocked { turnRight() } moveForward() } func lGo() { if isBlockedRight && isBlocked { turnLeft() } moveForward() } while g != totalGems { for i in 1 ... 5 { rGo() if isOnGem { collectGem() g += 1 } } for i in 1 ... 5 { lGo() if isOnGem { collectGem() g += 1 } } }