Определить минимальный элемент в каждом столбце и максимальный элемент в каждой строке матрицы - VB

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

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

Определить минимальный элемент в каждом столбце и максимальный элемент в каждой строке матрицы. найденные минимальные элементы элементы занести в массив MinMas, а максимальные элементы в массив MaxMas и расположить их соответственно по убыванию. и возрастанию. напечатать все массивы. всё на что хватило ума это заполнить массив, а дальше вообще без понятий...
Листинг программы
  1. Dim Mac(1 To 100, 1 To 100), MinMas(1 To 100, 1 To 100), MaxMas(1 To 100, 1 To 100) As Single, Max As Single, Min As Single
  2. Dim n As Integer
  3. n = Val(InputBox(Введите количество Элементов(не больше100) "))
  4. For I = 1 To n
  5. For J = 1 To n
  6. Mac(I, J) = Int(Rnd) * 200
  7. Next J
  8. Next I
  9. Debug.Print Mac(I, J)

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

textual
Листинг программы
  1. Option Explicit
  2. Private Sub Command1_Click()
  3. Dim Mac() As Single, MinMas() As Single, MaxMas() As Single
  4. Dim i As Integer, j As Integer
  5. Dim n As Integer, m As Integer
  6. Randomize
  7. Cls
  8. m = Val(InputBox("Введите количество строк ", , 10))
  9. n = Val(InputBox("Введите количество столбцов ", , 10))
  10. ReDim Mac(1 To n, 1 To n), MinMas(1 To n), MaxMas(1 To m) As Single
  11.  
  12.  'Заполняем массив и печатаем его
  13. For i = 1 To m
  14.      For j = 1 To n
  15.         Mac(i, j) = Int(Rnd * 100)
  16.         Print vbTab; Mac(i, j);
  17.      Next j
  18.      Print
  19.  Next i
  20.  
  21. 'Находим в каждой строке максимальный элемент и записываем его в массив MaxMas
  22. For i = 1 To m
  23.      MaxMas(i) = Mac(i, 1)
  24.      For j = 1 To n
  25.          If MaxMas(i) < Mac(i, j) Then MaxMas(i) = Mac(i, j)
  26.      Next j
  27.  Next i
  28.  
  29.  'Находим в каждом столбце минимальный элемент и записываем его в массив MinMas
  30. For i = 1 To n
  31.      MinMas(i) = Mac(1, i)
  32.      For j = 1 To m
  33.          If MinMas(i) > Mac(j, i) Then MinMas(i) = Mac(j, i)
  34.      Next j
  35.  Next i
  36.  
  37.  Print
  38.  Print "Массив максимальных элементов каждой строки исходного массива несортированный"
  39.  For i = 1 To m
  40.      Print MaxMas(i);
  41.  Next i
  42.  Print
  43.  
  44.  Print "Массив минимальных элементов каждого столбца исходного массива несортированный"
  45.  For i = 1 To n
  46.      Print MinMas(i);
  47.  Next i
  48.  Print
  49.  
  50.  'Cортируем массив максимальных элементов  по возрастанию, а минимальных -по убыванию.
  51. Call BubbleSortMin(MinMas, n)
  52.  Call BubbleSortMax(MaxMas, m)
  53.  
  54.  Print "Массив максимальных элементов каждой строки исходного массива  по возрастанию"
  55.  For i = 1 To m
  56.      Print MaxMas(i);
  57.  Next i
  58.  Print
  59.  
  60.  Print "Массив минимальных элементов каждого столбца исходного массива по убыванию"
  61.  For i = 1 To n
  62.      Print MinMas(i);
  63.  Next i
  64.  
  65. End Sub
  66. ' Сортировка по возрастанию
  67. Public Sub BubbleSortMax(ByRef Arr() As Single, ByRef n As Integer)
  68.     Dim i As Long
  69.     Dim j As Long
  70.     Dim Tmp As Double
  71.     For i = 1# To n + 1 Step 1
  72.         For j = 1# To n - i Step 1
  73.             If Arr(j) > Arr(j + 1#) Then
  74.                 Tmp = Arr(j)
  75.                 Arr(j) = Arr(j + 1#)
  76.                 Arr(j + 1#) = Tmp
  77.             End If
  78.         Next j
  79.     Next i
  80. End Sub
  81. 'Сортировка по убыванию
  82. Public Sub BubbleSortMin(ByRef Arr() As Single, ByRef n As Integer)
  83.     Dim i As Long
  84.     Dim j As Long
  85.     Dim Tmp As Double
  86.     For i = 1# To n + 1 Step 1
  87.         For j = 1# To n - i Step 1
  88.             If Arr(j) < Arr(j + 1#) Then
  89.                 Tmp = Arr(j)
  90.                 Arr(j) = Arr(j + 1#)
  91.                 Arr(j + 1#) = Tmp
  92.             End If
  93.         Next j
  94.     Next i
  95. End Sub

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


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

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

11   голосов , оценка 3.727 из 5

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

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

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