Because of wordwrap in email, there are small problems with comments. If You don't read the code, You would have problems.
Pacior On Aug 16, 10:39 am, CHESTER BENNIGNTON <[email protected]> wrote: > hey .. > i am getting an COMPILE ERROR.. > can you please re-check your code ?? > > On Aug 16, 12:12 am, pacior <[email protected]> wrote: > > > Hey > > I solved this problem. I pasted here the classes. > > To check program i generated Junit tests - which took me the same > > amount of time as writing program( 10 minutes + 10 minutes ) If You > > don't attend J2EE basics course, don't use test packages classes > > ( Withdrawaltest,RootSuite ) > > Here is project: > > > source classes: > > file:Balance.java > > /* > > * To change this template, choose Tools | Templates > > * and open the template in the editor. > > */ > > > /** > > * > > * @author pacior > > */ > > public class Balance { > > private float amount; > > private float charge = 0.5f; > > > public Balance(float amount) { > > this.amount = amount; > > } > > > public float getAmount() { > > return amount; > > } > > > public void setAmount(float amount) { > > this.amount = amount; > > } > > > public float getCharge() { > > return charge; > > } > > > } > > > file:Withdrawal.java > > /* > > * To change this template, choose Tools | Templates > > * and open the template in the editor. > > */ > > > /** > > * > > * @author pacior > > */ > > public class Withdrawal { > > > private Balance balance; > > /** > > * @param args the command line arguments > > */ > > public static void main(String[] args) { > > Withdrawal atm = new Withdrawal(); > > try{ > > System.out.println(atm.withdraw(Float.parseFloat(args[0]), > > Float.parseFloat(args[1])));//passing input parameters - must be > > float, otherwise exception is made > > } > > catch ( NumberFormatException e ){ > > System.out.println("Wrong parameters, use:Withdrawal > > moneys balance"); > > } > > } > > private float banknote = 5; > > public float withdraw(float cash,float balance){ > > this.balance = new Balance(balance); > > if ( cash % banknote != 0 ) > > return balance; > > float result = this.balance.getAmount() - cash - > > this.balance.getCharge(); > > if ( result > 0 ) > > return result; > > else > > return this.balance.getAmount(); > > } > > > } > > > test packages: > > RootSuite.java > > /* > > * To change this template, choose Tools | Templates > > * and open the template in the editor. > > */ > > > import org.junit.After; > > import org.junit.AfterClass; > > import org.junit.Before; > > import org.junit.BeforeClass; > > import org.junit.runner.RunWith; > > import org.junit.runners.Suite; > > > /** > > * > > * @author pacior > > */ > > @RunWith(Suite.class) > > @Suite.SuiteClasses({WithdrawalTest.class}) > > public class RootSuite { > > > } > > > file:WithdrawalTest.java > > /* > > * To change this template, choose Tools | Templates > > * and open the template in the editor. > > */ > > > import org.junit.After; > > import org.junit.AfterClass; > > import org.junit.Before; > > import org.junit.BeforeClass; > > import org.junit.Test; > > import static org.junit.Assert.*; > > > /** > > * > > * @author pacior > > */ > > public class WithdrawalTest { > > > public WithdrawalTest() { > > } > > > /** > > * Test of withdraw method, of class Withdrawal. > > */ > > @Test > > public void testWithdraw() { > > System.out.println("Example - Successful Transaction"); > > float cash = 30.0F; > > float balance = 120.0F; > > Withdrawal instance = new Withdrawal(); > > float expResult = 89.5F; > > float result = instance.withdraw(cash, balance); > > assertEquals(expResult, result, 0.0); > > > System.out.println("Example - Incorrect Withdrawal > > Amount (not multiple of 5)"); > > > cash = 42.0F; > > balance = 120.0F; > > instance = new Withdrawal(); > > expResult = 120.0F; > > result = instance.withdraw(cash, balance); > > assertEquals(expResult, result, 0.0); > > > System.out.println("Example - Insufficient Funds"); > > cash = 300.0F; > > balance = 120.0F; > > instance = new Withdrawal(); > > expResult = 120.0F; > > result = instance.withdraw(cash, balance); > > assertEquals(expResult, result, 0.0); > > // TODO review the generated test code and remove the default > > call to fail. > > //fail("The test case is a prototype."); > > } > > > } > > > Regards > > Pacior > > -- > > Netbeans 6.7 > > java 1.6.0_14 > > > On Aug 15, 9:52 pm, Pratik Mehta <[email protected]> wrote: > > > > Pooja would like to withdraw X $US from an ATM. The cash machine will > > > only accept the transaction if X is a multiple of 5, and Pooja's > > > account balance has enough cash to perform the withdrawal transaction > > > (including bank charges). For each successful withdrawal the bank > > > charges 0.50 $US. Calculate Pooja's account balance after an attempted > > > transaction. > > > Input > > > > Positive integer 0 < X <= 2000 - the amount of cash which Pooja wishes > > > to withdraw. > > > Nonnegative number 0<= Y <= 2000 with two digits of precision - > > > Pooja's initial account balance. > > > Output > > > > Output the account balance after the attempted transaction, given as a > > > number with two digits of precision. If there is not enough money in > > > the account to complete the transaction, output the current bank > > > balance. > > > Example - Successful Transaction > > > > Input: > > > 30 120.00 > > > > Output: > > > 89.50 > > > Example - Incorrect Withdrawal Amount (not multiple of 5) > > > > Input: > > > 42 120.00 > > > > Output: > > > 120.00 > > > Example - Insufficient Funds > > > > Input: > > > 300 120.00 > > > > Output: > > > 120.00 > > --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/javaprogrammingwithpassion?hl=en -~----------~----~----~----~------~----~------~--~---
