цикл по 2D-массиву по диагонали - PullRequest
1 голос
/ 27 апреля 2020

Я пишу функцию, которая должна иметь значение l oop через двумерный массив по диагонали (слева направо и снизу справа). Тем не менее, код не добавляет к внешнему значению, пока l oop (i), он сохраняет его в 0. arr 9X9

    var i = 0
    var j = 0

    while(i < arr.count-1){
        while (j < arr.count-1) {


            print("i = \(i) --- j = \(j)")
            if(i == j){

                sumDiagonalLeft += arr[j][i]

                print(sumDiagonalLeft)

                if(arr[j][i] == 1){
                    informationUsed += 1
                    arr[i][j] = 2
                }
            }

         j += 1

        }
        i += 1
    }

Спасибо за ваше время:)

1 Ответ

1 голос
/ 27 апреля 2020

попробуйте,

var array:[[Int]] = []

array.append([1,2,3,4,5,6,7,8,9])
....
array.append([1,2,3,4,5,6,7,8,9])

for (index, element) in array.enumerated(){
    for (innerIndex,innerElement) in element.enumerated(){
        print(innerElement) // you can do your logics here 
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...