编辑代码

1.7.3代码练习

//数据定义部分
//定义行数和列数
let rows = 9
let cols = 5
//定义干扰项数量
let distractorMount = 5
//定义不同项数量
let differentMount = 3
//定义上下两个图形数组
var iv1 : Array<Strig> = []
var iv2 : Array<Strig> = []
//定义上下相同的干扰项数组
var cords : Array<(Int,Int)> = []
//定义上下不同的数组
var errorCords : Array<(Int,Int)> = []
//干扰项和不同项只能是B,^,v,>,<
let images : Array<Strig> = ["B","^","V",">","<"]
//数据定义结束

//函数1:初始化图形
func initGame() {
    iv1.removeAll()
    iv2.removeAll()
    for _ in 0..<rows {
        for _ in 0..<cols {
            iv1.append("a")
            iv2.append("a")
        }
    }
}

//函数2:显示
func display(){
    print("up image begin-----")
    for i in 0..<rows {
        for j in 0..<cols {
            print(iv1[i*cols+j],separator: " ", terminator: " ")
        }
        print()
    }
    print("up image end------")
    print("down image begin----")
    for i in 0..<rows {
        for j in 0..<cols {
            print(iv2[i*cols+j],separator: " ", terminator: " ")
        }
        print()
    }
    print("down image end ----")
}

//函数3:生成干扰项的随机位置和随机内容。
func distractorCerte(mount:Int){
    for _ in o..mount {
        let col = Int(arc4random()) % cols
        let row = Int(arc4random()) % rows
        cords.append(row,col)
        iv1[cols*row + col] = images[index]
        iv2[cols*row + col] = images[index]
    }
}

//函数4:生成不同项的随机位置和随机内容。
func differenceCreate (mount: Int) {
    for_in 0.. ‹mount{
        let cOl= Int (arc4random ()) % cols
        let row =Int (arc4random () )% rows

        errorCords.append ((row, col))
        /从images提供的宇符中选择一
        let index=Int (arc4random () ) % images.count
        /选择上面因形,还是下面图形?
        let which=Int (arc4random () ) %2
        //影响 iv1 和iv2这两个图形
        if which == 0{
            iv1 [cols*row+col] =images [index]
        }
        else{
            iv2 [cols*row +col] =images[index]
        }
    }
}