Заполнить массив последовательными натуральными числами, идущими по спирали - VB
Формулировка задачи:
привет всем
не могу написать программу, помогите пожалуйста
можно просто алгоритм с соответствующими операциями
Дан квадратный двумерный массив n на n. Заполнить его последовательными натуральными числами, идущими по спирали.
Mассив заполнен числами от 1 по n^2
Cпираль начинается с левого верхнего угла и идет по часовой стрелке
Решение задачи: «Заполнить массив последовательными натуральными числами, идущими по спирали»
textual
Листинг программы
- Sub main()
- Dim S As Range, N%, C%, R%, I%, J%, dC%, dR%
- Set S = Selection: S.ClearContents
- N = S.Columns.Count
- C = 1: R = 1: J = 1: S(1, 1) = 1
- For I = 1 To 2 * N - 1
- dC = (2 - I Mod 4) Mod 2
- dR = (2 - (I - 1) Mod 4) Mod 2
- Do
- If C + dC > N Or C + dC < 1 Then Exit Do
- If R + dR > N Or R + dR < 1 Then Exit Do
- If S(R + dR, C + dC) Then Exit Do
- C = C + dC
- R = R + dR
- J = J + 1
- S(R, C) = J
- Loop
- Next I
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д