Ask Me Help Desk

Ask Me Help Desk (https://www.askmehelpdesk.com/forum.php)
-   Java (https://www.askmehelpdesk.com/forumdisplay.php?f=440)
-   -   Java questions (https://www.askmehelpdesk.com/showthread.php?t=771045)

  • Oct 13, 2013, 07:10 AM
    samt51577
    java questions
    Modify the application so it will only accept customer type codes r and c. It should also discard any extra entries on the customer type line. If the user enters an invalid code, the application should display an error message and ask the user to enter a valid code. This should be done first before the user enters a subtotal:

    import java.text.NumberFormat;
    import java.util.Scanner;

    public class InvoiceApp
    {
    public static void main(String[] args)
    {
    Scanner sc = new Scanner(System.in);
    String choice = "y";

    while (!choice.equalsIgnoreCase("n"))
    {
    // get the input from the user
    System.out.print("Enter customer type (r/c): ");
    String customerType = sc.next();
    System.out.print("Enter subtotal: ");
    double subtotal = sc.nextDouble();

    // get the discount percent
    double discountPercent = 0;
    if (customerType.equalsIgnoreCase("R"))
    {
    if (subtotal < 100)
    discountPercent = 0;
    else if (subtotal >= 100 && subtotal < 250)
    discountPercent = .1;
    else if (subtotal >= 250)
    discountPercent = .2;
    }
    else if (customerType.equalsIgnoreCase("C"))
    {
    if (subtotal < 250)
    discountPercent = .2;
    else
    discountPercent = .3;
    }
    else
    {
    discountPercent = .1;
    }


    // calculate the discount amount and total
    double discountAmount = subtotal * discountPercent;
    double total = subtotal - discountAmount;

    // format and display the results
    NumberFormat currency = NumberFormat.getCurrencyInstance();
    NumberFormat percent = NumberFormat.getPercentInstance();
    System.out.println(
    "Discount percent: " + percent.format(discountPercent) + "\n" +
    "Discount amount: " + currency.format(discountAmount) + "\n" +
    "Total: " + currency.format(total) + "\n");

    // see if the user wants to continue
    System.out.print("Continue? (y/n): ");
    choice = sc.next();
    System.out.println();
    }
    }
    }

  • All times are GMT -7. The time now is 03:11 AM.