Квадратная матрица порядка 2n - VB
Формулировка задачи:
Дана действительная квадратная матрица порядка 2n. Получить новую матрицу, переставляя ее блоки размера nЧn крест-накрест.
Решение задачи: «Квадратная матрица порядка 2n»
textual
Листинг программы
Private Sub Command1_Click() Dim A(1 To 20, 1 To 20), B(1 To 20, 1 To 20) As Integer, i As Integer, j As Integer Cls N = InputBox("Введите размер квадратной матрицы", , 4) Print: Print Print " Матрица A": Print 'Создание исходной матрицы А For i = 1 To N For j = 1 To N If (i >= 1 And i <= N / 2) And (j >= 1 And j <= N / 2) Then A(i, j) = 1 If (i >= 1 And i <= N / 2) And (j >= N / 2 + 1 And j <= N) Then A(i, j) = 2 If (i >= N / 2 + 1 And i <= N) And (j >= 1 And j <= N / 2) Then A(i, j) = 3 If (i >= N / 2 + 1 And i <= N) And (j >= N / 2 + 1 And j <= N) Then A(i, j) = 4 Print " "; A(i, j); Next j Print: Print Next i ' Создание матрицы В с переставленными блоками Print: Print Print " Матрица B": Print For i = 1 To N For j = 1 To N If (i >= 1 And i <= N / 2) And (j >= 1 And j <= N / 2) Then B(i, j) = A(N / 2 + i, N / 2 + j) If (i >= 1 And i <= N / 2) And (j >= N / 2 + 1 And j <= N) Then B(i, j) = A(N / 2 + i, j - N / 2) If (i >= N / 2 + 1 And i <= N) And (j >= 1 And j <= N / 2) Then B(i, j) = A(i - N / 2, j + N / 2) If (i >= N / 2 + 1 And i <= N) And (j >= N / 2 + 1 And j <= N) Then B(i, j) = A(i - N / 2, j - N / 2) Print " "; B(i, j); Next j Print: Print Next i
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д