Сформируйте линейный массив В[1. . N*N], получающийся при чтении данного массива так, как показано на рисунке - VB
Формулировка задачи:
Дан двумерный массив целых чисел
А[1..N,1..N]
. Сформируйте линейный массивВ[1..N*N]
, получающийся при чтении данного массива так, как показано на рисунке: пример программыРешение задачи: «Сформируйте линейный массив В[1. . N*N], получающийся при чтении данного массива так, как показано на рисунке»
textual
Листинг программы
- Function Zmei(A() As Integer) As integer ()
- Dim R () as integer
- n% = UBound(A, 2)
- Redim R(1 to n%*n%) As integer
- oo%=0
- ii% = n%
- jj% = n%
- d% = 0
- up% = 1
- le% = 1
- dw% = n
- rg% = n - 1
- If (n Mod 2) <> 0 Then
- i_end% = n \ 2 + 1
- j_end% = n \ 2 + 1
- Else
- i_end% = n \ 2 + 1
- j_end% = n \ 2
- End If
- Do
- oo%=oo%+1
- R(oo%)=A(ii%,jj%)
- If ii% = i_end% And jj% = j_end% Then Exit Sub
- Select Case (d%)
- Case 0
- ii% = ii% - 1
- If ii% = up% Then d% = 1
- Case 1
- jj% = jj% - 1
- If jj% = le% Then d% = -1
- Case -1
- ii% = ii% + 1
- If ii% = dw% Then d% = 2
- Case 2
- jj% = jj% + 1
- If jj% = rg% Then
- d% = 0
- up% = up% + 1
- le% = le + 1
- dw% = dw% - 1
- rg% = rg% - 1
- End If
- End Select
- Loop
- Zmei=R
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д