// Project: StaticMethods // No modules defined. // Source code file: WriteCheck1.java // Use stepwise refinement: write helper methods to // implement the details of writing the check. public class WriteCheck1 { public static void main(String[] args) { System.out.println(writeCheck(1, 20, 19, "John Doe", 36.50, "Supplies")); } public static String writeCheck(int mon, int day, int yr, String payee, double amount, String memo) { String output = printHorizBorder( ); output += printDateLine(mon, day, yr); output += printBlankLine( ); output += printPayee(payee); output += printAmount(amount); output += printAmtInWords(amtInWords(amount)); output += printMemo(memo); output += printHorizBorder( ); return output; } public static String printHorizBorder( ) { return "+--------------------------------------+\n"; } public static String printBlankLine( ) { return "| |\n"; } public static String printDateLine(int mon, int day, int yr) { String output = "| " + String.format("%d/%d/%d", mon, day, yr) + " |\n"; return output; } public static String printPayee(String payee) { String output = "| Payee: " + String.format("%-15s", payee); return output; } public static String printAmount(double amount) { String output = String.format(" $%3.2f |\n", amount); return output; } public static String printAmtInWords(String word) { String output = "| " + word + " |\n"; return output; } // Stub method. Replace with actual method later. public static String amtInWords(double amount) { return "Dollars: Gazillion and 00/100"; } public static String printMemo(String memo) { String output = "| For: " + String.format("%-25s", memo) + " |\n"; return output; } }