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

Update the SuperLottoPlus class (either your assignment, or my solution) to incl

ID: 3889919 • Letter: U

Question

Update the SuperLottoPlus class (either your assignment, or my solution) to include the following: Create a new method called printTicket that takes a String of lottery numbers as a parameter (the return value of generateNumbers) The method header should indicated that it throws an exception [10 pt] Inside the method, write the passed String to a file called lottery.txt [10 pt] When writing to the file, figure out how to make it append to the file rather than over-write the file [15 pt] In the main method When the user is prompted to enter the number of lottery tickets, catch the exception if anything other than an integer is entered [15 pt] Also, manually throw and catch an exception if the number of lottery tickets is less than or equal to 0 [15 pt] Rather than just printing the lottery numbers to the screen, print it to the lottery.txt file (by calling printTicket) [20 pt] Surround the call to the printTicket method with exception handling, and display a friendly message to the user if there are any issues with the file [15 pt]

import java.util.Random;
import java.util.Scanner;


public class SuperLottoPlus
{
public static String generateNumbers()
{
String generateNumbers = "";
  
Random randGen = new Random();
  
int [] numbers = new int[5];
int count = 0;
int num;
  
while(count < numbers.length) {
   num = (randGen.nextInt(47) + 1);
           boolean repeat = false;
           do {
for( int i = 0; i < numbers.length; ++i )
{
       if (num == numbers[i]) {
repeat = true;
break;
}
    else if (num != numbers[i] && i == count) {
numbers[i] = num;
count++;
repeat = true;
break;
}
}
  
} while (!repeat);
}
  
for(int i = 0; i < numbers.length; ++i )
{
System.out.print(numbers[i] + " ");
}
  
generateNumbers = generateNumbers + "MEGA: ";
generateNumbers = generateNumbers + (randGen.nextInt(27) + 1);
generateNumbers = generateNumbers + " ";
return generateNumbers;
}


public static void main( String [] args )
{
int numberOfTickets;
Scanner scnr = new Scanner( System.in );
System.out.print( "How many Super Lotto tickets do you want? " );
numberOfTickets = scnr.nextInt();
  
for( int i = 1; i <= numberOfTickets; ++i)
{
System.out.print(generateNumbers());
}
  
}
}

Explanation / Answer

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileWriter;

import java.io.IOException;

import java.util.InputMismatchException;

import java.util.Random;

import java.util.Scanner;

public class SuperLottoPlus {

    public static String generateNumbers() {

        String generateNumbers = "";

        Random randGen = new Random();

        int[] numbers = new int[5];

        int count = 0;

        int num;

        while (count < numbers.length) {

            num = (randGen.nextInt(47) + 1);

            boolean repeat = false;

            do {

                for (int i = 0; i < numbers.length; ++i) {

                    if (num == numbers[i]) {

                        repeat = true;

                        break;

                    } else if (num != numbers[i] && i == count) {

                        numbers[i] = num;

                        count++;

                        repeat = true;

                        break;

                    }

                }

            } while (!repeat);

        }

        for (int i = 0; i < numbers.length; ++i) {

            System.out.print(numbers[i] + " ");

        }

        generateNumbers = generateNumbers + "MEGA: ";

        generateNumbers = generateNumbers + (randGen.nextInt(27) + 1);

        generateNumbers = generateNumbers + " ";

        System.out.println(generateNumbers);

        return generateNumbers;

    }

    public static void printTicket(String tickets) throws IOException

    {

        

        File file = new File("lottery.txt");

        BufferedWriter bw = null;

        FileWriter fw = null;

        if (!file.exists()) {

            file.createNewFile();

        }

        fw = new FileWriter(file.getName(), true);

        bw = new BufferedWriter(fw);

        bw.write(tickets);

        bw.close();

    }

    public static void main(String[] args) {

        int numberOfTickets = 0;

        Scanner scnr = new Scanner(System.in);

        System.out.print("How many Super Lotto tickets do you want? ");

        try

        {

            

        numberOfTickets = scnr.nextInt();

        if(numberOfTickets<=0)

        {

            throw new IllegalArgumentException();

        }

        }

        catch(InputMismatchException e)

        {

            System.out.println("Please enter an Integer");

            

        }

        catch(IllegalArgumentException e)

        {

            System.out.println("please enter a value greater than 0");

        }

        try {

        for (int i = 1; i <= numberOfTickets; ++i) {

            printTicket(generateNumbers());

        }

        

        

        } catch (IOException e) {

            // TODO Auto-generated catch block

            System.out.println("Oops some thing went wrong. Please try again");

        }

        

    }

}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote