Есть очень простой способ сделать это, но он, вероятно, не будет очень быстрым. Однако сначала используйте двойной цикл for для циклического прохождения каждой ячейки в матрице:
For(a, 1, 9
For(b, 1, 9
End
End
Затем, когда вы проверяете соседей, вы должны учитывать углы и ребра, которые не имеют восьми пробелов вокруг них.
For(a, 1, 9
For(b, 1, 9
If a>1 and a <9 and b>1 and b<9
Then
End
End
End
Теперь мы можем проверить, сколько мест вокруг нас 9. Мы будем использовать счетчик «с», чтобы посчитать, сколько раз мы находим 9. Это утомительно, но это самый простой способ
0->c
For(a, 1, 9
For(b, 1, 9
If a>1 and a <9 and b>1 and b<9
Then
c + ([a](a-1, b-1)=9) + ([a](a-1, b)=9) + ([a](a-1, b+1)=9) + ([a](a, b-1)=9) + ([a](a,
b+1)=9) + ([a](a+1, b-1)=9) + ([a](a+1, b)=9) + ([a](a+1, b+1)=9)->c
End
c->[a](a, b)
End
End
Я не учел углы и края, вам просто нужно добавить еще один, если StatementHope это помогло!