Сформируйте линейный массив В[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
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д