I have this code.. To play a game of Pontoon (Blackjack) i want to be able to reach the number of 21 and then stop. This does not. This carries on. Of course if the user wants to drop out then they can press n for no.
import java.util.Scanner;
public class Pontoon {
public static void main(String[] args) { Scanner input = new Scanner(System.in); int playerScore = 0, computerScore = 0; String newCard = ""; playerScore += dealCard(); computerScore += dealCard(); playerScore += dealCard(); computerScore += dealCard(); System.out.printf("Your score is %d would you like another card ? y/n ", playerScore); newCard = input.nextLine(); if (newCard.equalsIgnoreCase("Y")) { while (newCard.equalsIgnoreCase("Y")) { playerScore += dealCard(); System.out.printf("Your score is %d would you like another card ? y/n ", playerScore); newCard = input.nextLine(); } } while (computerScore < 11) { computerScore += dealCard(); } checkWin(playerScore, computerScore); } public static int dealCard() { int value = (int) (Math.random() * 13) + 1; int score = 0; if (value == 1) { System.out.println("Ace!"); score = 11; } else if (value == 13) { System.out.println("King!"); score = 10; } else if (value == 12) { System.out.println("Queen!"); score = 10; } else if (value == 11) { System.out.println("Jack!"); score = 10; } else { score = value; } return score; } public static void checkWin(int Player, int Computer) { int player = Player; int computer = Computer; if (player > 21) { System.out.println("Player Bust"); } else if (computer > 21) { System.out.println("Computer Bust"); } else { if (player > computer) { System.out.println("Player Wins!"); } else { System.out.println("Computer Wins!"); } } }
}