Total beginner to Java! I need to find out why 'discount' and 'discountnum' keep saying they need to be initialized when I'm initializing in the if else statements. I don't want to take user input for those two like I do for my other variables. How can I fix this so it just posts the numbers?
import java.util.Scanner;
package com.company;
public class Coffee {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String name = scan.nextLine();
double prevpurchases = scan.nextDouble();
double saleamount = scan.nextDouble();
double discountnum;
double totalamount;
int discount;
double amountsaved;
System.out.println("Welcome to Starbucks.\n"+
"Please enter your name: " + name);
System.out.println("Please enter the current purchase amount: " + saleamount);
System.out.println("Please enter the number of purchases in the last month: " + prevpurchases);
if (saleamount < 5){
discountnum = 0;
amountsaved = 0.00;
} else {
if (prevpurchases == 0) {
discountnum = 0.05;
discount = 5;
}
else if (prevpurchases >= 1 && prevpurchases <= 5){
discountnum = 0.10;
discount = 10;
}
else if (prevpurchases >= 6 && prevpurchases <= 10){
discountnum = 0.15;
discount = 15;
}
else if (prevpurchases >= 11 && prevpurchases <= 15){
discountnum = 0.20;
discount = 20;
}
else if (prevpurchases >= 16 && prevpurchases <= 20){
discountnum = 0.25;
discount = 25;
}
else if (prevpurchases >= 21){
discountnum = 0.30;
discount = 30;
}
}
System.out.println("***********************\n" +
"Receipt for " + name);
System.out.println("You get a " + discount + "% discount.");
amountsaved = saleamount * discountnum;
totalamount = saleamount - amountsaved;
System.out.println("Total amount due: $ " + totalamount);
System.out.println("You saved $ " + amountsaved);
System.out.println("***********************\n");
}
}
EXAMPLE OUTPUT:
Welcome to Starbucks.
Please enter your name: Brian B Bryan
Please enter the current purchase amount: $ 12.78
Please enter the number of purchases in the last month: 14
Receipt for Brian B Bryan
You get a 20% discount.
Total amount due: $ 10.22
You saved $ 2.56