*1
let rows = 9
let cols = 5
var group : Array<String> = []
*2
func initGame(){
group.removeAll()
for _ in 0..<rows{
for _ in 0..<cols {
group.append{"0"}
}
}
}
*3
func display(){
for i in 0..<rows {
for j in 0..<cols {
print(group[i*clos+j], separator:"", terminator:"")
}
print()
}
}
*4
func setObject(row:Int,col:Int,objectID:String) {
if row>=rows || col>=cols {
return
}
group[row*cols+col] = objectID
}
*5
initGame()
setObject(row: 1, col: 3, objectID:"<")
setObject(row: 3, col: 1, objectID:"B")
setObject(row: 6, col: 2, objectID:"B")
display()
*6
func findMonkey()->(Int,Int,String) {
for i in 0..<rows {
for j in 0..<cols {
let value = group[i*cols+j]
switch value {
case "^":
return (i,j,"up")
case "v":
return(i,j,"down")
case "<"
return(i,j,"left")
case ">"
return(i,j,"right")
default:
print ()
}
}
}
return(0,0,"none")
}
*7
func step() {
var (row,col,status) = findMonkey()
switch status {
case "up":
if row > 0 {
group[row*cols+col]="|"
row -= 1
group[row*cols+col]="^"
}
case "down":
if row < rows-1 {
group[row*cols+col]="|"
row += 1
group[row*cols+col]="v"
}
case "left":
if col > 0 {
group[row*cols+col]="-"
col -= 1
group[row*cols+col]="<"
}
case "right":
if col < cols-1 {
group{row*cols+col}="-"
col += 1
group{row*cols+col}">"
}
default:
print()
}
}
*8
func tion(direction:String){
let (row,col,status) = findMonkey()
if direction == "left" {
switch statuns {
case "up":
group[row*cols+col] = "<"
case "down":
group[row*cols+col] = ">"
case "left":
group[row*cols+col] = "v"
case "right":
group[row*cols+col] = "^"
default:
print()
}
}
else if direction=="right" {
print(row,col,statuns)
switch statuns {
case "up":
group[row*cols+col] = ">"
case "down":
group[row*cols+col] = "<"
case "left":
group[row*cols+col] = "^"
case "right":
group[row*cols+col] = "v"
default:
print()
}
}
}