Unit 6 Chapter 15 Assignment Comments are REQUIRED flow char

Unit 6 Chapter 15 Assignment
Comments are REQUIRED; flow charts and pseudocode are NOT REQUIRED

Directions
The files must be called <LiFiUnit6Ch15.java> LiFiSaleCheck.java (Sale Checker Class File)
The files must be called as specified above, (LiFi = Your Last Initial Your First Initial)
Proper coding conventions required the first letter of the class start with a capital letter and the first letter of each additional word start with a capital letter.

Style Components
Include properly formatted prologue, comments, indenting, and other style elements.

Topics Covered
Topics with * are covered in this assignment. Ensure you use every item listed below in your completed assignment.
*Exceptions and Exception Messages
*try / catch
*checked and unchecked exceptions
*generic catch block
*throws

Basic Requirements
Write a program that validates a sale in dollars and cents with a $ and a .(period).
See sample output below.

LiFiUnit6Ch15.java
     - Driver class should loop until “q” is entered to quit
     - If enter is not “q”, then create an instance of the LiFiSaleCheck object passing the entry as an argument
     - If no error
          - Print amount by calling:
               - print numeric from LiFiSaleCheck class
               - print alphabetic from LiFiSaleCheck class
     - If error
    - Print error message (see sample)

LiFiSaleCheck.java class
Sales object should store the sale in 2 integer instance variables, dollars and cents, and include a string variable to hold the error. This should be initialized with null.

LiFiSaleCheck Constructor:
     - Receive sale as a string
     - Perform error checking to ensure time was entered in proper format to include a color (.) between the dollars and cents and a $ at the start of the string.
     - Use indexOf and substring to separate the sale string into the appropriate instance variables
     - Use try/catch to catch format errors of dollars and cents as shown in example
     - If an error occurs, change the error instance variable to reflect the error (see sample)
     - If more than one error occurs in the format of the dollars and cents, show both.

print numeric method:
     - Print in the format $123.45 using both dollars and cents instance variables
     - Print in the format 123 dollars and 45 cents using both dollars and cents instance variables

print alphabetic method:
     - Print in the format 123 dollars and 45 cents using both dollars and cents instance variables

getError method:
     - Include a getError method that returns the error instance variable to the print method

Sample
Your output will vary based on input.
<See Unit6 001 Sample>

Please enter anount of sale in forn $#.tt \"q\" to quit 123.45 Invalid sale fornat nissing 123.45 Please enter anount of sale in forn $8.8 X\" to quit $123:45 Invalid sale fornat niss ing $123:45 Please enter anount of sale in forn $8. G\"g\" to quit $abc.34 Invalid dollar fornat For input string abc Please enter anount of sale in forn $11.1!ll \"g\" to quit $123.de Invalid cents fornat For input string \"de Please enter anount of sale in forn $11.1!ll K to quit $12d.de Invalid dollar fornat For input string: \"12d\" Invalid cents fornat For input string \"de\" Please enter anount of sale in forn $8.88 (\"q\" to quit $123.45 $123.45 123 dollars and 45 cents Please enter anount of sale in forn $11. K\" to quit q

Solution

//Part I Driver Class

LiFiUnit6Ch15.java

package LiFi

import LiFi.LiFiSaleCheck;

import java.util.*;

public class Lifi

{

public static void main(String args[]) throws Exception // Driver class method

{   

System.out.println(\"Enter your choice\");

char ch;

Scanner sc = new Scanner(System.in);

  

ch = sc.next().charAt(0); // Taking input of the letter first

try

{   

while(ch !=\'q\') // looping until \'Q\' is entered

{

System.out.println(\"Enter amount of sale in form $#.## <q to quit>\");

String[] sale = sc.nextLine().split(\".\"); // split the entered string based on period

LifiSaleCheck salecheck = new LifiSaleCheck(sale); // Initiating the object with entered sale amount

salecheck.printNumeric(); // Calling printNumeric from driver class

salecheck.printAlphabet(); // calling printAlphabet from driver class

}

}

catch(Exception e)

{

System.out.println(\"Please enter character to proceed\");

}

}

}

// Part 2 file LiFiSaleCheck.java

package LiFi

import LiFi.LiFiUnit6Ch15

import java.util.*;

public class LiFiSaleCheck

{

public LiFiSaleCheck(String[] sale) // taking sale argument for constructor

{

String var = null;

if(var==null)

{

Sytem.out.println(\"Error in sales value\");

  

}

else

{

try { dollars=Integer.parseInt(sale[0]); } // Converting the object into integer

catch(Exception e) // Catching exception and printing the error using Try catch block

{

System.out.println(\"Invalid dollar format for input string : \" + sale[0]);

}

try { cents = Integer.parseInt(sale[1]); } // converting cents to integer

catch(Exception e)

{

System.out.println(\"Invalid centsformat for input string : \" + sale[1]);

}

}

public static void main(String args[]) thorws Exception

{

  public static Integer dollars,cents;

}

public void printNumeric()

{

System.out.println(\"$\"+dollars+\".\"+cents);//Printing in Numberic form

}

public void printAlphabet()

{

System.out.println(dollars+\" \"+dollars+ \" and \"+cents+\" \"+\"cents\"); // Printing in alphabetic form

}

}

Unit 6 Chapter 15 Assignment Comments are REQUIRED; flow charts and pseudocode are NOT REQUIRED Directions The files must be called <LiFiUnit6Ch15.java> L
Unit 6 Chapter 15 Assignment Comments are REQUIRED; flow charts and pseudocode are NOT REQUIRED Directions The files must be called <LiFiUnit6Ch15.java> L
Unit 6 Chapter 15 Assignment Comments are REQUIRED; flow charts and pseudocode are NOT REQUIRED Directions The files must be called <LiFiUnit6Ch15.java> L
Unit 6 Chapter 15 Assignment Comments are REQUIRED; flow charts and pseudocode are NOT REQUIRED Directions The files must be called <LiFiUnit6Ch15.java> L

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site