Квадратная матрица порядка 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

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.25 из 5
Похожие ответы