Need help immediately!

I’m doing programming homework and I’ve already asked my professor for help, but she keeps making it worse and I am completely stuck. I don’t know what to do at this point and I keep getting errors when I run the program. So far this is what I have,

public static void main(String[] args) {
	Scanner keyboard = new Scanner(System.in);
	double paymentMonth, 
	year = 0, 
	balance = 300,
	month = 0,
	name,
	nextPayment,
	newBalance;
	System.out.print("what month are you making the payment? ");
	paymentMonth = keyboard.nextDouble();
	System.out.print("what is the year? ");
	year = keyboard.nextDouble();
	System.out.print("What is your name? ");
	name = keyboard.nextDouble();
	System.out.print("How much will be your payment be? ");
	nextPayment = keyboard.nextDouble();
	if (balance <= 0) {
		System.out.println("Congratulations name, you are free from our continuous collection harassments." );
	}
	else if (month <= 2) {
		System.out.printf("name made a payment of nextPayment. Your payment was within the agreed time frame but you still owe newBalance, so keep up the payment and we will not come and pull you out of class. %s");
	}
	else if (month > 2) {
		System.out.printf("name made a payment of nextPayment. Your payment was month late and you still owe newBalance, so we will come take your car or any other item of value. %s");
	}
	else if (month > 4) {
		System.out.printf("name made a payment of nextPayment. Your payment was month late and you still owe newBalance, so we will be taking your firstborn until you pay your bill. %s");
	}
	else if (month > 6) {
		System.out.printf("name made a payment of nextPayment. Your payment was month late and you still owe newBalance, so be ready for the warrent and court. %s");
	}
	month = 6 + paymentMonth;
	newBalance = balance - nextPayment;
	

}

}

And I keep getting these errors
Exception in thread “main” java.util.InputMismatchException
at java.base/java.util.Scanner.throwFor(Scanner.java:939)
at java.base/java.util.Scanner.next(Scanner.java:1594)
at java.base/java.util.Scanner.nextDouble(Scanner.java:2564)
at lab2WS.main(lab2WS.java:18)
I’m supposed to make a program that accepts the users name, payment and month of payment and it’s supposed to display this

If the student’s new balance is 0 or less

Congratulations “student name”, you are free from our
continuous collection harassments. (no other print is done).

If the #months is 2 or less then display

“student name ” made a payment of “#0.00 ”. Your
payment was within the agreed time frame but you still
owe “#0.00 (calc)” so keep up the payments and we
Will not come and pull you out of class.

If the #months is more than 2 then display

“student name ” made a payment of “#0.00 ”. Your
payment was “#months (calc)” late and you still owe
#0.00 (calc)” so we will come take your car or any other
item of value.

If the #months is more than 4 then display

“student name” made a payment of “#0.00”. Your
payment was “#months (calc)” late and you still owe
#0.00 (calc)” so we will be taking your firstborn until you
pay your bill.

If the #months is more than 6 then display

“student name” made a payment of “#0.00”. Your
payment was “#months (calc)” late and you still owe
#0.00 (calc)” so be ready for the warrant and court date.

Like I said I am very confused and my professor made it worse and I would greatly appreciate the help.