Другие языки программирования и технологии

Даны действительные числа а (1),а (2),...а (2n). Получить: а (1),а (2n),а (2),а (2n-1),а (3),...а (n),а (n+1).

Одномерные массивы. Нужен код на Basic.
Option Base 1' нижний индекс массива
Sub Alenke()
'Даны действительные числа а (1),а (2),...а (2n).
'Получить: а (1),а (2n),а (2),а (2n-1),а (3),...а (n),а (n+1).

Dim a() As Double' наш массив
Dim b() As Double' вспомогательный массив

Dim n As Integer
Dim i As Integer
dim j as integer
Dim txt1 As String
Dim txt2 As String
' готовимся заполнить массив псевдослучайными числами
Randomize Timer

n = CInt(InputBox("N", "Число элементов массива/2", "3")) * 2' указали требуемый размер
ReDim a(n)' привели к нему массивы
ReDim b(n)
' заготовки для вывода результатов
txt1 = "Исходный массив: "
txt2 = "Измененный массив: "

' заполнили массив
For i = 1 To n
'a(i) = Rnd * 1001' правильно, но ненаглядно
a(i) = i' тоже правильно, но наглядно
b(i) = a(i) ' залолняем вспомогательный массив
txt1 = txt1 & a(i) & ";"' запоминаем исходный массив для вывода
Next
' группируем
For i = 1 To n / 2
j = j + 1
a(j) = b(i)
j = j + 1
a(j) = b(n - (i - 1))
Next
' готовимся показать группировку
For i = 1 To n
txt2 = txt2 & a(i) & ";"
Next
' выводим
MsgBox (txt1 & Chr(13) & txt2)
End Sub
Николай Калиниченко
Николай Калиниченко
1 249
Лучший ответ