Alkantel
Новичок
- Сообщения
- 45
- Репутация
- 1
Добрый день! Прошу знающих помочь разобраться с кодом.
Есть массив 3х3. Работаю с ячейками 1, 3, 5, 7, 9, то есть с диагоналями. Во всех ячейках находятся единицы. И с каждым подходом добавляем 1 к текущему значению в 9й клетке. Когда значение в 9й клетке достигает 10, то добавляем 1 к значению 7й клетки, когда там значение будет 10, то добавляем 1 к значению в 5й клетке и так, пока 10 не будет везде.
Так вот, проблема в том, что когда в 9й клетке уже 10, то 1 добавляется к значению 5й клетки, а когда в 5й клетке значение 10, то 1 добавляется к значению 7й клетки. Не понимаю почему так.
Уже весь мозг сломал :wall_brake:
Есть массив 3х3. Работаю с ячейками 1, 3, 5, 7, 9, то есть с диагоналями. Во всех ячейках находятся единицы. И с каждым подходом добавляем 1 к текущему значению в 9й клетке. Когда значение в 9й клетке достигает 10, то добавляем 1 к значению 7й клетки, когда там значение будет 10, то добавляем 1 к значению в 5й клетке и так, пока 10 не будет везде.
Так вот, проблема в том, что когда в 9й клетке уже 10, то 1 добавляется к значению 5й клетки, а когда в 5й клетке значение 10, то 1 добавляется к значению 7й клетки. Не понимаю почему так.
Код:
#include<Array.au3>
Global $Array[3][3] = [[1, 1, 1], [1, 1, 1], [1, 1, 1]]
Global $1 = 1
Global $3 = 1
Global $5 = 1
Global $7 = 1
Global $9 = 1
While $9 <= 10
$Array[2][2] = $9
If $9 = 10 Then
Switch $Array
Case $Array[2][2] = 10 And $Array[2][0] <> 10 And $Array[1][1] <> 10 And $Array[0][2] <> 10 And $Array[0][0] <> 10
$7 = $7 + 1
$Array[2][0] = $7
$9 = 0
Case $Array[2][2] = 10 And $Array[2][0] = 10 And $Array[1][1] <> 10 And $Array[0][2] <> 10 And $Array[0][0] <> 10
$5 = $5 + 1
$Array[1][1] = $5
$9 = 0
Case $Array[2][2] = 10 And $Array[2][0] = 10 And $Array[1][1] = 10 And $Array[0][2] <> 10 And $Array[0][0] <> 10
$3 = $3 + 1
$Array[0][2] = $3
$9 = 0
Case $Array[2][2] = 10 And $Array[2][0] = 10 And $Array[1][1] = 10 And $Array[0][2] = 10 And $Array[0][0] <> 10
$1 = $1 + 1
$Array[0][0] = $1
$9 = 0
Case $Array[2][2] = 10 And $Array[2][0] = 10 And $Array[1][1] = 10 And $Array[0][2] = 10 And $Array[0][0] = 10
MsgBox(4096, "Result", "Все по 10")
Exit
EndSwitch
EndIf
$9 = $9 + 1
_ArrayDisplay($Array)
WEnd
Уже весь мозг сломал :wall_brake: