Паслядоўныя нумары ў VB 2008

Я хачу напісаць код у VB 2008 для паслядоўных лікаў, калі яны не з'яўляюцца паслядоўнымі напісаць іх паслядоўна.

Напрыклад: Калі ў мяне ёсць спіс цэлых лікаў = 1, 2, 3, 4, 10, 11, 15

Я хачу, каб гэты від мовы, які будзе прыняты

З 1 па 4, 10, 11 і 15

Калі ласка, дапамажы мне !

дзякуй

1
Хатняе заданне мяне думае?
дададзена аўтар Jon Egerton, крыніца
Няма яго ня homework..I не трэба рабіць у маёй працы .. неабходна стварыць тэкставы дакумент з такой мовай
дададзена аўтар Angel, крыніца

1 адказы

Па сутнасці вы павінны цыкл праз іх і прымяніць набор правілаў вываду ў залежнасці ад папярэдняга значэння. Таксама ад вас, напрыклад, выхаду вам трэба будзе праверыць, каб убачыць, калі вы дайшлі да канца масіва.
Вось даволі грувасткі спосаб зрабіць гэта (vb.net не з'яўляецца мова, які я звычайна выкарыстоўваю таму, калі ласка, прабачце памылкі):

Public Shared Function TestMethod() As String
        Dim _integers() As Integer = {1, 2, 3, 4, 10, 11, 15}
        Dim _temp As Integer = _integers(0)
        Dim _result As String = _temp.ToString()
        For i As Integer = 1 To _integers.Length - 1
            If (i + 1) = _integers.Length Then
                _result += " and " + _integers(i).ToString()
            ElseIf (_integers(i) - _temp) = 1 Then
                _result += ", " + _integers(i).ToString()
            Else
                _result += " through " + _integers(i).ToString()
            End If
            _temp = _integers(i)
        Next
        Return _result
End Function
0
дададзена
Дзякуй, Ваша рашэнне працуе для прыкладу я пералічыў, але калі я павялічыць даўжыню цэлага ліку я атрымліваю няправільны выснову.
дададзена аўтар Angel, крыніца