Question: Hey, can someone help me with my code? I don't understand why my text for my else keeps on printing when I press a character.
Hey, can someone help me with my code? I don't understand why my text for my else keeps on printing when I press a character. And how do I flip a single coin in an array for choice "F"
import java.util.Random; import java.util.Scanner;
/** * * @author Brandon Cannizzaro */ public class Lab01Test {
/** * @param args the command line arguments */ public static void main(String[] args) { Random randomNumbers = new Random(); int numHeads = 0; int numTails = 0; int numFlips; String userInput; int coins; int n, i; char A, F, Q; int totalCoins = 0;
n = 0;
Scanner keyboard = new Scanner(System.in);
System.out.print("How many coins would you like? "); coins = keyboard.nextInt();
//Creating array of coins based off user input int[] arrayCoins = new int[coins];
final int maxFlips = arrayCoins.length;
System.out.println("Array of Coins:");
for (numFlips = 0; numFlips
System.out.print((numFlips + 1) + " "); } System.out.println("");
for (numFlips = 0; numFlips
System.out.print("Heads "); numHeads++; } else { System.out.print("Tails "); numTails++; }
} System.out.println("");
System.out.print(" Tally: "); System.out.printf("%s %,5d ", "Heads", numHeads); System.out.printf("%s %,5d ", "Tails", numTails);
do { System.out.print(" Enter a choice: (F)lip a coin, Flip (A)ll coins, (Q)uit: "); userInput = keyboard.nextLine();
if (userInput.equalsIgnoreCase("Q")) { System.out.println("Bye, Bye!");
} else if (userInput.equalsIgnoreCase("F")) {
System.out.print("Enter a coin to flip: "); coins = keyboard.nextInt();
System.out.println("Array of Coins:");
for (numFlips = 0; numFlips
System.out.print((numFlips + 1) + " ");
} System.out.println("");
for (numFlips = 0; numFlips
System.out.print("Heads "); numHeads++; } else { System.out.print("Tails "); numTails++; }
} System.out.println("");
System.out.print(" Tally: "); System.out.printf("%s %,5d ", "Heads", numHeads); System.out.printf("%s %,5d ", "Tails", numTails);
} else if (userInput.equalsIgnoreCase("A")) { System.out.println(" Array of Coins: ");
for (numFlips = 0; numFlips
System.out.print("Heads "); numHeads++; } else { System.out.print("Tails "); numTails++; }
} System.out.println("");
System.out.print(" Tally: "); System.out.printf("%s %,5d ", "Heads", numHeads); System.out.printf("%s %,5d ", "Tails", numTails);
System.out.println("");
} else { System.out.println(" You have entered an invalid choice."); } } while (!(userInput.equalsIgnoreCase("Q")));
} }
When I run my code it should look like the picture, or at least similar.
Heads Tails Heads Tails Tails Tails Heads Heacs Heads Tails Tally: Heads 5 Talis 5 ArEay of Coina: Heads Tails Heads Tails Heads Tails Heads Heads Tails Heads Tal1y: Heata 6 Tails 6 Enter choice \{F1lig a coln, tlip |A|11 co1ns, (Q)u1?t a Areay of cotna: Ially: Heads 5 To.1. 5 Bntak choice \$EI11g a coifi, flip |A|11 colna, lQilaits a Array of cotnat Taly: Hescs 1 Tails 9 Enter chaice |F|lip a coin, tlip |A| 11 coins, (Q) uit1 f Rntef coin nuniner to fligs 6 Areay of Coine: Tally: HCs 150 Iaila 10 Enter cho1ze |FI110 a co1r. t11D |A|11 co1ns rovu1ti a Heads Tails Heads Tails Tails Tails Heads Heacs Heads Tails Tally: Heads 5 Talis 5 ArEay of Coina: Heads Tails Heads Tails Heads Tails Heads Heads Tails Heads Tal1y: Heata 6 Tails 6 Enter choice \{F1lig a coln, tlip |A|11 co1ns, (Q)u1?t a Areay of cotna: Ially: Heads 5 To.1. 5 Bntak choice \$EI11g a coifi, flip |A|11 colna, lQilaits a Array of cotnat Taly: Hescs 1 Tails 9 Enter chaice |F|lip a coin, tlip |A| 11 coins, (Q) uit1 f Rntef coin nuniner to fligs 6 Areay of Coine: Tally: HCs 150 Iaila 10 Enter cho1ze |FI110 a co1r. t11D |A|11 co1ns rovu1ti a
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
