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