Отсортировать элементы массива по возрастанию предварительно возведя каждый элемент массива в квадрат - VB
Формулировка задачи:
Помогите написать программу в Visual Basic, плиз.
Дан массив А={А0, А1,...,An}.
Задание 1. Преобразовать массив с обратной последовательностью.
Задание 2. Отсортировать элементы массива по возрастанию предварительно возведя каждый элемент массива в квадрат.
Прошу не ругайте, я видел на форуме похожие задачи с минимальными отличиями, но я очень плох в програмировании и не смог их скомпановать. Если можно напишите с пояснениями действий, т.к. мне похоже мне не дано понять программирования
Решение задачи: «Отсортировать элементы массива по возрастанию предварительно возведя каждый элемент массива в квадрат»
textual
Листинг программы
Private Sub Command1_Click()
Dim a(), N As Integer, i As Integer, tmp, str_m As String
N = Abs(Val(InputBox("N-?", , 10)))
ReDim a(N)
Randomize
str_m = ""
For i = 1 To N
a(i) = Int((Rnd * 100))
str_m = str_m & a(i) & " "
Next i
str_m = str_m & vbCrLf
For i = 1 To N
If i <= N \ 2 Then _
tmp = a(i): a(i) = a(N - i + 1): a(N - i + 1) = tmp
str_m = str_m & a(i) & " "
Next i
MsgBox str_m
End Sub
Private Sub Command2_Click()
Dim N As Integer, i As Integer, j As Integer, tmp
Dim c()
N = Abs(Val(InputBox("N-?", , 10)))
ReDim c(N)
Randomize
str_m = ""
For i = 1 To N
c(i) = Int((Rnd * 99))
str_m = str_m & c(i) & " "
Next i
str_m = str_m & vbCrLf
For i = 1 To N
c(i) = c(i) ^ 2
str_m = str_m & c(i) & " "
Next i
str_m = str_m & vbCrLf
For i = 1 To N - 1
For j = i To N
If c(i) > c(j) Then
tmp = c(i): c(i) = c(j): c(j) = tmp
End If
Next j
str_m = str_m & c(i) & " "
Next i
str_m = str_m & c(N)
MsgBox str_m
End Sub