Imports System.Collections.Generic
Dim seqSize As Integer = 8
Dim maxValue As Integer = 20
Dim set1 = GenerateSet(start, seqSize, maxValue, start)
Console.WriteLine(String.Join(",", set1.ToArray()))
Dim set2 = GenerateSet(start, seqSize, maxValue, start)
Console.WriteLine(String.Join(",", set2.ToArray()))
Dim set3 = GenerateSet(start, seqSize, maxValue, start)
Console.WriteLine(String.Join(",", set3.ToArray()))
Dim set4 = GenerateSet(start, seqSize, maxValue, start)
Console.WriteLine(String.Join(",", set4.ToArray()))
Public Function GenerateSet(startingInteger As Integer, sequenceSize As Integer, maxValue As Integer, ByRef lastValue As Integer) As IEnumerable(Of Integer)
Dim values = Enumerable.Range(startingInteger, sequenceSize).[Select](Function(x) (x Mod maxValue) + 1)
lastValue = values.LastOrDefault()