import java.util.*; import java.io.*; public class CoinGame{ private BankAccount bankaccount, bankaccount2; private Coin coin, coin2; private double pot; private double random; public CoinGame (BankAccount bankaccount, Coin coin, BankAccount bankaccount2, Coin coin2) { this.coin = coin; this.coin2 = coin2; this.bankaccount = bankaccount; this.bankaccount2 = bankaccount2; } public void turn () { if ((bankaccount.getBalance ()) < (bankaccount2.getBalance ()) ) { random = ( (bankaccount.getBalance() ) * Math.random ()); } else { random = ( (bankaccount2.getBalance() ) * Math.random () ); } this.bankaccount.withdraw (random); this.bankaccount2.withdraw (random); pot = pot + (2 * random); coin.flip (); coin2.flip (); if (coin.getFace () .equals ( coin2.getFace () ) && coin.getFace () .equals ("Heads")) { this.bankaccount.deposit (pot); pot = 0; } else { if ( coin.getFace () .equals ( coin2.getFace () ) && coin.getFace () .equals ("Tails")) { this.bankaccount2.deposit (pot); pot = 0; } } } public void play (int n) { while (n > 0) { turn (); n = n -1; } } public double getBankAccount () { return bankaccount.getBalance (); } public double getBankAccount2 () { return bankaccount2.getBalance (); } }