Переставить местами элементы побочной диагонали матрицы - VB

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

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

Помогите пожалуйста решить задачу:

"Переставить местами элементы побочной диагонали матрицы, симметричные относительно её центра."

. Неделю с ней сижу, не могу решить. Начало вроде правильное.
Листинг программы
  1. Dim x() As Single, i, n, k As Integer
  2. Private Sub Выход_Click()
  3. t = MsgBox("Выдействительно хотите выйти??", vbYesNo)
  4. If t = vbYes Then End
  5. End Sub
  6. Private Sub Переставить_Click()
  7. Text2.BackColor = RGB(200, 200, 180)
  8. Text2.ForeColor = vbBlue
  9. For i = 1 To n mod 2
  10. For j = 1 To n
  11. If j = k Then x(i, j) = x(j, i)
  12. Text2.Text = Text2.Text + Str(x(i, j)) + " "
  13. Next: Text2.Text = Text2.Text + Chr(13) + Chr(10)
  14. Next
  15. End Sub
  16.  
  17. Private Sub Показать_Click()
  18. For i = 1 To n
  19. For j = 1 To n
  20. Text1.Text = Text1.Text + Str(x(i, j)) + " "
  21. Next: Text1.Text = Text1.Text + Chr(13) + Chr(10)
  22. Next
  23. End Sub
  24. Private Sub Создать_Click()
  25. n = Val(InputBox("Ввести размерность массива", , "N="))
  26. ReDim x(n, n)
  27. Randomize timtr
  28. For i = 1 To n
  29. For j = 1 To n
  30. x(i, j) = Int(Rnd * 9) - 1
  31. Next
  32. Next
  33. End Sub
  34. Private Sub Удалить_Click()
  35. Text1.Text = ""
  36. Text2.Text = ""
  37. End Sub
  38. Private Sub Picture1_Click()
  39. End Sub
в этой части программы:
Листинг программы
  1. Private Sub Переставить_Click()
  2. Text2.BackColor = RGB(200, 200, 180)
  3. Text2.ForeColor = vbBlue
  4. For i = 1 To n mod 2
  5. For j = 1 To n
  6. If j = k Then x(i, j) = x(j, i)
  7. Text2.Text = Text2.Text + Str(x(i, j)) + " "
  8. Next: Text2.Text = Text2.Text + Chr(13) + Chr(10)
  9. Next
  10. End Sub
наверно куча ошибок

Решение задачи: «Переставить местами элементы побочной диагонали матрицы»

textual
Листинг программы
  1. Option Explicit
  2. Dim i  As Integer, j As Integer, n As Integer, k As Integer, x() As Integer
  3. Private Sub Переставить_Click()
  4. Text1.Text = ""
  5. Text2.Text = ""
  6. Text2.BackColor = RGB(200, 200, 180)
  7. Text2.ForeColor = vbBlue
  8. n = Val(InputBox("Ввести размерность массива", "N=", 5))
  9. ReDim x(1 To n, 1 To n)
  10. Randomize
  11.  
  12. For i = 1 To n
  13.     For j = 1 To n
  14.          x(i, j) = Int(Rnd * 9) - 1
  15.     Next
  16. Next
  17.  
  18. For i = 1 To n
  19.     For j = 1 To n
  20.           Text1.Text = Text1.Text + Str(x(i, j)) + " "
  21.     Next: Text1.Text = Text1.Text + Chr(13) + Chr(10)
  22. Next
  23.  
  24. For i = 1 To n \ 2
  25.    k = x(i, n - i + 1)
  26.    x(i, n - i + 1) = x(n - i + 1, i)
  27.    x(n - i + 1, i) = k
  28.  
  29. Next
  30.  
  31. For i = 1 To n
  32.     For j = 1 To n
  33.           Text2.Text = Text2.Text + Str(x(i, j)) + " "
  34.     Next: Text2.Text = Text2.Text + Chr(13) + Chr(10)
  35. Next
  36.  
  37. End Sub

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


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

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

14   голосов , оценка 4 из 5

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

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

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