import java.util.Random;
import java.util.Set;
import java.util.TreeSet;
/**
Generate random Powerball lottery numbers:
- 5 distinct numbers from 1–69
- 1 Powerball number from 1–26
This program uses:
- java.util.Random for RNG
- TreeSet to enforce uniqueness AND keep numbers sorted
- clean, idiomatic Java structure with helper functions
*/
/**
generateMainNumbers():
Generates 5 UNIQUE numbers in the range [1, 69].
TreeSet automatically:
- prevents duplicates
- keeps numbers sorted
*/
public class PowerballGenerator {
public static Set<Integer> generateMainNumbers(Random rng) {
Set<Integer> numbers = new TreeSet<>();
while (numbers.size() < 5) {
int n = rng.nextInt(69) + 1; // 1–69
numbers.add(n);
}
return numbers;
}
/**
generatePowerball():
Generates a single number in the range [1, 26].
*/
public static int generatePowerball(Random rng) {
return rng.nextInt(26) + 1; // 1–26
}
public static void main(String[] args) {
Random rng = new Random();
Set<Integer> mainNumbers = generateMainNumbers(rng);
int powerball = generatePowerball(rng);
System.out.println("Random Powerball numbers:");
System.out.print("Main numbers: ");
for (int n : mainNumbers) {
System.out.print(n + " ");
}
System.out.println();
System.out.println("Powerball: " + powerball);
}
}
/*
run:
Random Powerball numbers:
Main numbers: 16 38 39 40 60
Powerball: 23
*/