Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

java with arrays (no array list as we didn\'t learn it in this course we study c

ID: 3694674 • Letter: J

Question

java with arrays (no array list as we didn't learn it in this course we study classes and arrays so far)

third time i post this, always wrong answers!! please include program output sample!

creat a new program that simulates the game of lotto using ARRAYS.

- the user will input 6 numbers (integers), ranging from 1 to 59.

- the computer willl randomly pick the winning numbers (6 of them and the "Bonus" number)

- to win first prize the user must match all of the 6 numbers.

- to win second prize, the user will must match 5 of 6 numbers AND the bonus number.

** Numbers CANNOT be generated twice, for example 6,18,18,50,52,55 is not valid as 18 appears twice.

** winning numbers (via the computer) are always presented in ascending order.

Explanation / Answer

/*LotteryGame.java java code to find the prize won in lottery */

import java.util.*;


public class LotteryGame {
/*The main method is the program's starting point */

public static void main(String[] args){

// array for user entry
int[] userDigits = new int[6];

// array for computer generated numbers
int[] lotteryNumbers = new int[6];

// counnt of same numbers in both array to find the prize.
int sameNum = 0;

Random randNum = new Random();

lotteryNumbers[0] = randNum.nextInt(5) + 1;
lotteryNumbers[1] = randNum.nextInt(10) + 5;
lotteryNumbers[2] = randNum.nextInt(10) + 15;
lotteryNumbers[3] = randNum.nextInt(10) + 25;
lotteryNumbers[4] = randNum.nextInt(10) + 35;
lotteryNumbers[5] = randNum.nextInt(10) + 45;

int bonus_number = randNum.nextInt(5)+ 55;

Scanner keyboard = new Scanner(System.in);


System.out.println("Input ranging from 1 to 59, Enter digit 1: ");
userDigits[0] = keyboard.nextInt();
while (userDigits[0] > 59 || userDigits[0] < 1) {
System.out.println("Invalid Input");
System.out.println("Input ranging from 1 to 59, Enter digit 1: ");
userDigits[0] = keyboard.nextInt();
}


System.out.println("Input ranging from 1 to 59, Enter digit 2: ");
userDigits[1] = keyboard.nextInt();
while (userDigits[1] > 59 || userDigits[1] < 1) {
System.out.println("Invalid Input");
System.out.println("Input ranging from 1 to 59, Enter digit 2: ");
userDigits[1] = keyboard.nextInt();
}

while (userDigits[0] == userDigits[1]) {
System.out.println("Duplicate entries not allowed");
System.out.println("Input ranging from 1 to 59, Enter digit 2: ");
userDigits[1] = keyboard.nextInt();
}


System.out.println("Input ranging from 1 to 59, Enter digit 3: ");
userDigits[2] = keyboard.nextInt();
while (userDigits[2] > 59 || userDigits[2] < 1) {
System.out.println("Invalid Input");
System.out.println("Input ranging from 1 to 59, Enter digit 3: ");
userDigits[2] = keyboard.nextInt();
}

while (userDigits[0] == userDigits[2] || userDigits[1] == userDigits[2]) {
System.out.println("Duplicate entries not allowed");
System.out.println("Input ranging from 1 to 59, Enter digit 2: ");
userDigits[2] = keyboard.nextInt();
}

System.out.println("Input ranging from 1 to 59, Enter digit 4: ");
userDigits[3] = keyboard.nextInt();
while (userDigits[3] > 59 || userDigits[3] < 1) {
System.out.println("Invalid Input");
System.out.println("Input ranging from 1 to 59, Enter digit 4: ");
userDigits[3] = keyboard.nextInt();
}

while (userDigits[0] == userDigits[3] || userDigits[1] == userDigits[3] || userDigits[2] == userDigits[3]) {
System.out.println("Duplicate entries not allowed");
System.out.println("Input ranging from 1 to 59, Enter digit 2: ");
userDigits[3] = keyboard.nextInt();
}


System.out.println("Input ranging from 1 to 59, Enter digit 5: ");
userDigits[4] = keyboard.nextInt();
while (userDigits[4] > 59 || userDigits[4] < 1) {
System.out.println("Invalid Input");
System.out.println("Input ranging from 1 to 59, Enter digit 5: ");
userDigits[4] = keyboard.nextInt();
}

while (userDigits[0] == userDigits[4] || userDigits[1] == userDigits[4] || userDigits[2] == userDigits[4] || userDigits[3] == userDigits[4]) {
System.out.println("Duplicate entries not allowed");
System.out.println("Input ranging from 1 to 59, Enter digit 2: ");
userDigits[4] = keyboard.nextInt();
}


System.out.println("Input ranging from 1 to 59, Enter digit 6: ");
userDigits[5] = keyboard.nextInt();
while (userDigits[5] > 59 || userDigits[5] < 1) {
System.out.println("Invalid Input");
System.out.println("Input ranging from 1 to 59, Enter digit 6: ");
userDigits[5] = keyboard.nextInt();
}

while (userDigits[0] == userDigits[5] || userDigits[1] == userDigits[5] || userDigits[2] == userDigits[5] || userDigits[3] == userDigits[5] || userDigits[4] == userDigits[5]) {
System.out.println("Duplicate entries not allowed");
System.out.println("Input ranging from 1 to 59, Enter digit 2: ");
userDigits[5] = keyboard.nextInt();
}


for (int i = 0; i < 6; i++ ) {
for (int j = 0; j < 6; j++ ) {
if(userDigits[i] == lotteryNumbers[j]) sameNum++;
}
}

int bonus = 0;
for (int i = 0; i < 6; i++ ) {
if(userDigits[i] == bonus_number) bonus =1;
}


System.out.println("Lottery numbers: " + lotteryNumbers[0] + " " + lotteryNumbers[1] + " " + lotteryNumbers[2] + " " + lotteryNumbers[3] + " " + lotteryNumbers[4] + " " + lotteryNumbers[5]);

System.out.println("Player numbers: " + userDigits[0] + " " + userDigits[1] + " " + userDigits[2] + " " + userDigits[3] + " " + userDigits[4] + " " + userDigits[5]);
  
System.out.println("Bonus Number: " + bonus_number);

System.out.println("Number of matching digits: " + sameNum);

if (sameNum == 6){
System.out.println("First Prize");
}

else if (sameNum == 5 && bonus == 1){
System.out.println("Second Prize");
}

else
System.out.println("No Prize");

}

}