import java.util.Scanner; class CommandReader { Bank bank; CommandReader( Bank bank ) { this.bank = bank; } // @pre: input complies to specified format void run() { Scanner scanner; String command; String name; int amount; scanner = new Scanner( System.in ); do { command = scanner.next().toLowerCase(); if (command.equals( "enroll" )) { name = scanner.next(); bank.enroll( name ); } else if (command.equals( "deposit" )) { name = scanner.next(); amount = scanner.nextInt(); bank.deposit(name, amount); } else if (command.equals( "withdraw" )) { name = scanner.next(); amount = scanner.nextInt(); bank.withdraw(name, amount); } else if (command.equals( "print" )) { name = scanner.next(); bank.print(name); } else if (command.equals( "printall" )) { bank.printAll(); } else if (command.equals( "printred" )) { bank.printRed(); } else if (command.equals( "interest" )) { double rate = scanner.nextDouble(); bank.interest(rate); } else if (command.equals( "stop" )) { // do nothing } else { System.out.println( "unknown command" ); // skip rest of line scanner.nextLine(); } } while (! command.equals( "stop" )); } }