Imports System
Imports System.Collections.Generic
Module PowerballGenerator
'
' Generate random Powerball lottery numbers:
' - 5 distinct numbers from 1–69
' - 1 Powerball number from 1–26
'
' This program uses:
' - System.Random for RNG
' - SortedSet(Of Integer) for uniqueness + sorted output
' - clean, idiomatic VB.NET structure with helper functions
'
'
' GenerateMainNumbers():
' Generates 5 UNIQUE numbers in the range [1, 69].
' SortedSet automatically:
' - prevents duplicates
' - keeps numbers sorted
'
Function GenerateMainNumbers(rng As Random) As SortedSet(Of Integer)
Dim numbers As New SortedSet(Of Integer)()
While numbers.Count < 5
Dim n As Integer = rng.Next(1, 70) ' 1–69
numbers.Add(n)
End While
Return numbers
End Function
'
' GeneratePowerball():
' Generates a single number in the range [1, 26].
'
Function GeneratePowerball(rng As Random) As Integer
Return rng.Next(1, 27) ' 1–26
End Function
Sub Main()
Dim rng As New Random()
Dim mainNumbers As SortedSet(Of Integer) = GenerateMainNumbers(rng)
Dim powerball As Integer = GeneratePowerball(rng)
Console.WriteLine("Random Powerball numbers:")
Console.Write("Main numbers: ")
For Each n As Integer In mainNumbers
Console.Write(n & " ")
Next
Console.WriteLine()
Console.WriteLine("Powerball: " & powerball)
End Sub
End Module
'
' run:
'
' Random Powerball numbers:
' Main numbers: 27 37 39 43 57
' Powerball: 9
'