/* Week1.java 1.0 12 January 2003 */ public class Week1 extends JPFalt { public static void main(String[] args) { new Week1(); } /////////////////////////////////////////////////////////////////// // Place your actual methods here. // /////////////////////////////////////////////////////////////////// /* compute the travel time, given the distance and average speed ----------------------------------------------------------------*/ double travelTime(double distance, double speed){ return(distance/speed); } /* Examples/Tests ----------------------------------------------------------------*/ void travelTimeTest(){ testHeader("travelTime(double distance, double speed)"); expected(4.0); actual( travelTime(200.0, 50.0) ); expected(7.0); actual( travelTime(420.0, 60.0) ); } /* determine whether a person can vote, given the year of birth ----------------------------------------------------------------*/ boolean canVote(int dob){ return(2003 - dob) > 18; } /* Examples/Tests ----------------------------------------------------------------*/ void canVoteTest(){ testHeader("canVote(int age)"); expected(false); actual( canVote(1985) ); expected(true); actual( canVote(1982) ); expected(false); actual( canVote(1995) ); } /* compute the price of gas needed for a trip given the distance, the cost of gas, and miles per gallon ---------------------------------------------------------------*/ double tripCost(double distance, double mpg, double price){ return (gallonsNeeded(distance, mpg) * price); } /* Examples/Tests ----------------------------------------------------------------*/ void tripCostTest(){ testHeader("tripCost(distance, mpg, price)"); expected( 10.50); actual ( (tripCost(210, 30, 1.50) )); expected( 32.00); actual ( (tripCost(400, 20, 1.60) )); } /* helper: compute gallons of gas are needed, given the distance and miles per gallon ---------------------------------------------------------------*/ double gallonsNeeded(double distance, double mpg){ return distance / mpg; } /* Examples/Tests ----------------------------------------------------------------*/ void gallonsNeededTests(){ testHeader("gallonsNeeded(distance, mpg)"); expected( 7.0); actual ( gallonsNeeded(210, 30) ); expected( 20.00); actual ( gallonsNeeded(400, 20) ); } /* compute the price of museum admission, given the age of patron ----------------------------------------------------------------*/ double ticketPrice(int age){ /* Template if (age < 6) return ... if (age < 16) return ... if (age < 65) return ... else return... */ if (age < 6) return 0.0; if (age < 16) return 5.00; if (age < 65) return 10.00; else return 5.00; } /* Examples/Tests ----------------------------------------------------------------*/ void ticketPriceTests(){ testHeader("ticketPrice(int age)"); expected( 0.0); actual ( ticketPrice(3) ); expected( 5.0); actual ( ticketPrice(12) ); expected( 10.0); actual ( ticketPrice(34) ); expected( 5.0); actual ( ticketPrice(80) ); expected( 5.0); actual ( ticketPrice(6) ); expected( 10.0); actual ( ticketPrice(16) ); expected( 5.0); actual ( ticketPrice(65) ); } /* compute price of admissions for members and mon-members given the age of patron ------------------------------------------------------------*/ double memberTicketPrice(int age, boolean member){ /* Template if (member){ if (age < 6) return ... if (age < 16) return ... if (age < 65) return ... else return... } else{ if (age < 6) return ... if (age < 16) return ... if (age < 65) return ... else return... } */ if (member){ if (age < 6) return 0.0; if (age < 16) return 3.0; if (age < 65) return 5.0; else return 3.0; } else{ if (age < 6) return 0.0; if (age < 16) return 5.00; if (age < 65) return 10.00; else return 5.00; } } /* Examples/Tests ----------------------------------------------------------------*/ void memberTicketPriceTests(){ testHeader("memberTicketPrice(age, member)"); /* member prices */ expected( 0.0); actual ( memberTicketPrice(3, true) ); expected( 3.0); actual ( memberTicketPrice(12, true) ); expected( 5.0); actual ( memberTicketPrice(34, true) ); expected( 3.0); actual ( memberTicketPrice(80, true) ); expected( 3.0); actual ( memberTicketPrice(6, true) ); expected( 5.0); actual ( memberTicketPrice(16, true) ); expected( 3.0); actual ( memberTicketPrice(65, true) ); /* non-member prices */ expected( 0.0); actual ( memberTicketPrice(3, false) ); expected( 5.0); actual ( memberTicketPrice(12, false) ); expected( 10.0); actual ( memberTicketPrice(34, false) ); expected( 5.0); actual ( memberTicketPrice(80, false) ); expected( 5.0); actual ( memberTicketPrice(6, false) ); expected( 10.0); actual ( memberTicketPrice(16, false) ); expected( 5.0); actual ( memberTicketPrice(65, false) ); } }