Квадратная матрица порядка 2n - VB

Узнай цену своей работы

Формулировка задачи:

Дана действительная квадратная матрица порядка 2n. Получить новую матрицу, переставляя ее блоки размера nЧn крест-накрест.

Решение задачи: «Квадратная матрица порядка 2n»

textual
Листинг программы
  1. Private Sub Command1_Click()
  2. Dim A(1 To 20, 1 To 20), B(1 To 20, 1 To 20) As Integer, i As Integer, j As Integer
  3. Cls
  4. N = InputBox("Введите размер квадратной матрицы", , 4)
  5. Print: Print
  6. Print "      Матрица A": Print
  7. 'Создание исходной матрицы А
  8. For i = 1 To N
  9. For j = 1 To N
  10. If (i >= 1 And i <= N / 2) And (j >= 1 And j <= N / 2) Then A(i, j) = 1
  11. If (i >= 1 And i <= N / 2) And (j >= N / 2 + 1 And j <= N) Then A(i, j) = 2
  12. If (i >= N / 2 + 1 And i <= N) And (j >= 1 And j <= N / 2) Then A(i, j) = 3
  13. If (i >= N / 2 + 1 And i <= N) And (j >= N / 2 + 1 And j <= N) Then A(i, j) = 4
  14. Print "    "; A(i, j);
  15. Next j
  16. Print: Print
  17. Next i
  18. ' Создание матрицы В с переставленными блоками
  19. Print: Print
  20. Print "      Матрица B": Print
  21. For i = 1 To N
  22. For j = 1 To N
  23. 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)
  24. 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)
  25. 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)
  26. 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)
  27. Print "    "; B(i, j);
  28. Next j
  29. Print: Print
  30. Next i

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


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

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

12   голосов , оценка 4.25 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы