Вывести все элементы массива по возрастанию в переменную string - VB

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

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

Добрый день! Помогите, пожалуйста. Третий день голову ломаю. Имеется массив Arr, состоящий из n-количества элементов (float). Необходимо вывести все элементы по возрастанию в string'овую переменную, причем, если последующие элементы на 1 больше или на 1 меньше, то записать через тире. Например:
Заранее спасибо.
Решил. Изврат, но работает.

Решение задачи: «Вывести все элементы массива по возрастанию в переменную string»

textual
Листинг программы
n = 9
a = Array("1", "2", "3", "5", "7,4", "9", "22", "11", "7,1", "6")
s1 = "Исходный массив:" & vbCrLf & Join(a, "; ")
s2 = "Результат:" & vbCrLf
For j = 0 To n
        For i = 0 To n - 1 - j
            If CDbl(a(i)) > CDbl(a(i + 1)) Then
               tmp = a(i)
               a(i) = a(i + 1)
               a(i + 1) = tmp
            End If
         Next
Next
For i = 0 To n - 1
         If Abs(a(i) - a(i + 1)) = 1 Then
              a(i) = a(i) & "_"
         Else
             a(i) = a(i) & ";"
         End If
Next
s2 = s2 & Join(a)
wscript.echo s1 & vbcrlf & s2

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

12   голосов , оценка 3.75 из 5
Похожие ответы