Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Arrays;
- import java.util.Random;
- import java.util.Scanner;
- class Lotto642 {
- public static void main (String[]args){
- Scanner sc = new Scanner(System.in);
- System.out.println(" 6/42 LOTTO");
- System.out.println("Enter 6 numbers between 1 and 42 (no duplicates):");
- int[] winningNumbers = getRandomLotteryNumbers();
- int[] userNumbers = getUserInput();
- int matches = countMatches(userNumbers, winningNumbers);
- // --- Show Results ---
- System.out.println("\nYour numbers: " + Arrays.toString(userNumbers));
- System.out.println("Winning numbers: " + Arrays.toString(winningNumbers));
- System.out.println("You matched " + matches + " number(s).");
- // --- Switch Case for Prize ---
- switch (matches) {
- case 6 -> System.out.println("JACKPOT!");
- case 3, 4, 5 -> System.out.println("MINOR prize!");
- default -> System.out.println("Sorry, no prize. Better luck next time!");
- }
- }
- private static int countMatches(int[] userNumbers, int[] winningNumbers) {
- int matches = 0;
- for (int u : userNumbers) {
- for (int w : winningNumbers) {
- if (u == w) {
- matches++;
- }
- }
- }
- return matches;
- }
- private static int[] getRandomLotteryNumbers() {
- int[] nums = new int[6];
- Random rand = new Random();
- int count = 0;
- while (count < 6) {
- int num = rand.nextInt(42) + 1; // 1-42
- boolean duplicate = false;
- for (int j = 0; j < count; j++) {
- if (nums[j] == num) {
- duplicate = true;
- break;
- }
- }
- if (!duplicate) {
- nums[count] = num;
- count++;
- }
- }
- return nums;
- }
- private static int[] getUserInput() {
- Scanner sc = new Scanner(System.in);
- int[] nums = new int[6];
- int i = 0;
- while (i < 6) {
- System.out.print("Enter number " + (i + 1) + ": ");
- int num = sc.nextInt();
- if (num < 1 || num > 42) {
- System.out.println("Invalid! Number must be between 1 and 42.");
- continue; // re-ask
- }
- boolean duplicate = false;
- for (int j = 0; j < i; j++) {
- if (nums[j] == num) {
- duplicate = true;
- break;
- }
- }
- if (duplicate) {
- System.out.println("Duplicate number! Try again.");
- continue;
- }
- nums[i] = num;
- i++;
- }
- return nums;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment