Удалить из массива все элементы, больше данного числа k - VB
Формулировка задачи:
Дан массив целых чисел (n=24), заполненный случайным образом числами из промежутка [-5, 40].
1) Удалить из него все элементы, больше данного числа k (k вводить с клавиатуры).
2) Переставить все элементы в обратном порядке, расположенные между минимальными и максимальными элементами.
Помогите решить пожалуйста)) На зачете.
Решение задачи: «Удалить из массива все элементы, больше данного числа k»
textual
Листинг программы
- Option Explicit
- Dim a(1 To 24) As Integer, b() As Integer, c() As Integer
- Dim i As Integer, j As Integer, k As Integer, min As Integer, max As Integer
- Dim iMin As Integer, iMax As Integer
- Private Sub Command1_Click()
- Randomize 'Иницилизация генератора случайных чисел
- Cls 'Очищаем форму
- j=0
- For i = 1 To 24
- a(i) = Int(46 * Rnd - 5) 'Заполняем массив случайными числами
- Print a(i);
- Next i
- k = InputBox("Введите k", , 12)
- min = a(1): max = a(1): iMin = 1: iMax = 1
- For i = 1 To 24
- If max < a(i) Then max = a(i): iMax = i
- If min > a(i) Then min = a(i): iMin = i
- If a(i) <= k Then
- j = j + 1
- ReDim Preserve b(j)
- b(j) = a(i)
- End If
- Next i
- Print "Минимальный элемент A ("; iMin; ") = "; min
- Print "Максимальный элемент A ("; iMax; ") = "; max
- Print "k = "; k
- Print " Элементы меньше k"
- For i = 1 To j
- Print b(i);
- Next i
- ''''''''''''''''''''''''''''''''''''''''''''''''''''''
- ReDim c((Abs(iMin - iMax)) - 1)
- If iMin < iMax Then
- For i = 1 To Abs((iMin - iMax)) - 1
- c(i) = a(iMin + i)
- Next i
- Else
- For i = 1 To Abs((iMin - iMax)) - 1
- c(i) = a(iMax + i)
- Next i
- End If
- Print " Элементы между Min и Max"
- For i = 1 To Abs((iMin - iMax)) - 1
- Print c(i);
- Next i
- ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
- j = Abs((iMin - iMax)) - 1
- If iMin < iMax Then
- For i = 1 To j
- a((iMin + i)) = c((j + 1) - i)
- Next i
- Else
- For i = 1 To j
- a((iMax + i)) = c((j + 1) - i)
- Next i
- End If
- Print "Новый массив"
- For i = 1 To 24
- Print a(i);
- Next i
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д