Help Closing this code import javatextNumberFormat import ja

Help Closing this code!

import java.text.NumberFormat;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.Scanner;

public class Final {

   public static void main(String[] args) {

       Scanner sc = new Scanner(System.in);

       double base = 0;

       double rate = 0;

       double overcharge = 1.10;

       double excesscharge = 1.25;

       double tier1 = 350;

       double tier2 = 500;

       double over = 0;

       double excess = 0;

       double total = 0;

       System.out.println(\"\ Southwest Power & Light\ Billing Statement\ \");

       // WElCOME

       System.out.print(\"Please enter your name (Last, First) > \");

       Scanner nameInput = new Scanner(System.in);

       String name = nameInput.nextLine();

       // DATE

       SimpleDateFormat sdf = new SimpleDateFormat(\"MM/dd/yyyy\");

       String bDate = null;

       boolean valid = false;

       while (valid == false) {

           try {

               Scanner scandate = new Scanner(System.in);

               System.out.print(\"Meter reading date > \");

               bDate = scandate.nextLine();

               sdf.parse(bDate);

               valid = true;

               Scanner scandate2 = new Scanner(bDate);

               scandate2.useDelimiter(\"/\");

               // MONTH PRICES

               int date = scandate2.nextInt();

               if (date == 12 | date == 1 | date == 2)

                   rate = .10;

               else if (date >= 3 && date < 6)

                   rate = .12;

               else

                   rate = .15;

           } catch (Exception error) {

               System.out.println(\"Date entered is not valid try again!\");

           }

       }

       Scanner sca = new Scanner(System.in);

       String kwEntered = null;

       boolean isValid = false;

       while (isValid == false) {

           try {

               System.out.print(\"Electricity Used (KW) > \");

               kwEntered = sca.nextLine();

               Integer.parseInt(kwEntered);

               isValid = true;

               Date now = new Date();

               System.out.println(\"Date Printed : \" + sdf.format(now));

               System.out.println(\"Name: \" + name);

               System.out.println(\"Meter reading date: \" + bDate);

               System.out.println(\"Electricity Used (KW): \" + kwEntered);

               Scanner sc1 = new Scanner(kwEntered);

               int kwused = sc1.nextInt();

               if (kwused >= 0 && kwused <= 350) {

                   base = kwused * rate;

                   over = 0;

                   excess = 0;

               } else if (kwused > 350 && kwused <= 500) {

                   base = tier1 * rate;

                   over = (kwused - tier1) * (rate * overcharge);

                   excess = 0;

               } else if (kwused > 500) {

                   base = tier1 * rate;

                   over = (tier2 - tier1) * (rate * overcharge);

                   excess = (kwused - tier2) * (rate * excesscharge);

               }

           } catch (Exception error) {

               System.out.println(\"Invalid entry Please try again!\");

           }

       }

       base = Math.round(base * 100) / 100.;

       over = Math.round(over * 100) / 100.;

       excess = Math.round(excess * 100) / 100.;

       total = base + over + excess;

       NumberFormat fmt = NumberFormat.getCurrencyInstance();

       System.out.println(\"Baseline charge \" + fmt.format(base));

       System.out.println(\"Over-baseline charge \" + fmt.format(over));

       System.out.println(\"Excess charge \" + fmt.format(excess));

       System.out.println(\"Total amount due: \" + fmt.format(total));

       System.out.println(\"Calculate another bill (Y/N)?\");

      

  

       System.out.println(\"Thank you for letting us serve you!\");

   }

}

Solution

Final.java

import java.text.NumberFormat;//Package for number currecy

import java.text.SimpleDateFormat;//package for date

import java.util.Date;

import java.util.Scanner;//key board inputting package

public class Final {//main class

    public static void main(String[] args) {//main method

        Scanner sc = new Scanner(System.in);

        double base = 0;//variable declaration and assignments

        double rate = 0;

        double overcharge = 1.10;

        double excesscharge = 1.25;

        double tier1 = 350;

        double tier2 = 500;

        double over = 0;

        double excess = 0;

        double total = 0;
        String ch;

        System.out.println(\"\ Southwest Power & Light\ Billing Statement\ \");

        // WElCOME

        do{//dowhile loop
        System.out.print(\"Please enter your name (Last, First) > \");

        Scanner nameInput = new Scanner(System.in);

        String name = nameInput.nextLine();//key board inputting

        // DATE

        SimpleDateFormat sdf = new SimpleDateFormat(\"MM/dd/yyyy\");

        String bDate = null;

        boolean valid = false;

        while (valid == false) {

            try {

                Scanner scandate = new Scanner(System.in);

                System.out.print(\"Meter reading date > \");

                bDate = scandate.nextLine();//key board inputting

                sdf.parse(bDate);

                valid = true;

                Scanner scandate2 = new Scanner(bDate);

                scandate2.useDelimiter(\"/\");

                // MONTH PRICES

                int date = scandate2.nextInt();//key board inputting

                if (date == 12 | date == 1 | date == 2)

                    rate = 0.10;

                else if (date >= 3 && date < 6)

                    rate = 0.12;

                else

                    rate = 0.15;

            } catch (Exception error) {

                System.out.println(\"Date entered is not valid try again!\");

            }

        }

        Scanner sca = new Scanner(System.in);

        String kwEntered = null;

        boolean isValid = false;

        while (isValid == false) {

            try {

                System.out.print(\"Electricity Used (KW) > \");

                kwEntered = sca.nextLine();

                Integer.parseInt(kwEntered);

                isValid = true;

                Date now = new Date();

                System.out.println(\"Date Printed : \" + sdf.format(now));

                System.out.println(\"Name: \" + name);

                System.out.println(\"Meter reading date: \" + bDate);

                System.out.println(\"Electricity Used (KW): \" + kwEntered);

                Scanner sc1 = new Scanner(kwEntered);

                int kwused = sc1.nextInt();//key board inputting

                if (kwused >= 0 && kwused <= 350) {

                    base = kwused * rate;

                    over = 0;

                    excess = 0;

                } else if (kwused > 350 && kwused <= 500) {

                    base = tier1 * rate;

                    over = (kwused - tier1) * (rate * overcharge);

                    excess = 0;

                } else if (kwused > 500) {

                    base = tier1 * rate;

                    over = (tier2 - tier1) * (rate * overcharge);

                    excess = (kwused - tier2) * (rate * excesscharge);

                }

            } catch (Exception error) {

                System.out.println(\"Invalid entry Please try again!\");

            }

        }
//calculating charges
        base = Math.round(base * 100) / 100;

        over = Math.round(over * 100) / 100.;

        excess = Math.round(excess * 100) / 100;

        total = base + over + excess;

        NumberFormat fmt = NumberFormat.getCurrencyInstance();//getting currency symbol instance

        System.out.println(\"Baseline charge \" + fmt.format(base));

        System.out.println(\"Over-baseline charge \" + fmt.format(over));

        System.out.println(\"Excess charge \" + fmt.format(excess));

        System.out.println(\"Total amount due: \" + fmt.format(total));

        System.out.println(\"Calculate another bill (Y/N)?\");
        ch=sc.next();
        }while(ch.equalsIgnoreCase(\"Y\"));
      

          

        System.out.println(\"Thank you for letting us serve you!\");

    }

}

output

Southwest Power & Light
Billing Statement

Please enter your name (Last, First) > Chegg,Sters
Meter reading date > 13/02/2011
Electricity Used (KW) > 600
Date Printed : 10/14/2016
Name: Chegg,Sters
Meter reading date: 13/02/2011
Electricity Used (KW): 600
Baseline charge $52.00
Over-baseline charge $24.75
Excess charge $18.00
Total amount due: $94.75
Calculate another bill (Y/N)?
N
Thank you for letting us serve you!

Help Closing this code! import java.text.NumberFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; public class Final {
Help Closing this code! import java.text.NumberFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; public class Final {
Help Closing this code! import java.text.NumberFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; public class Final {
Help Closing this code! import java.text.NumberFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; public class Final {
Help Closing this code! import java.text.NumberFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; public class Final {
Help Closing this code! import java.text.NumberFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; public class Final {
Help Closing this code! import java.text.NumberFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; public class Final {

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site