Java Parking Ticket Simulator -
i have looked on here , spent time on , have hit brick wall. wokring on parking ticket simulator in java. not @ java, seem have of working. problem put in demo/test file , gives me same answer time. ridiculous values. can point me in right direction on how resolve this?
thanks, code below:
/** * @(#)parkedcar.java * * parkedcar application * * * @version 3.00 2014/2/9 */ public class parkedcar { //define variables private string carmake; private string carmodel; private string carcolour; private string carlicenseplate; private static int numberofminutesparked; //define constructors // no argument constructor // set vaules 0 or null public parkedcar() { carmake = " "; carmodel = " "; carcolour = " "; carlicenseplate = " "; numberofminutesparked = 0; } // constructor accepts input public parkedcar(string make,string model,string colour,string reg, int nominspkd) { carmake = make; carmodel = model; carcolour = colour; carlicenseplate = reg; numberofminutesparked = nominspkd; } // use set method // set variables - no needed public void setmake(string make) { carmake = make; } public void setmodel(string model) { carmodel = model; } public void setcolour(string colour) { carcolour = colour; } public void setreg(string reg) { carlicenseplate = reg; } public void setnominspkd(int nominspkd) { numberofminutesparked = nominspkd; } // use methods // variables - used read in values public string getmake() { return carmake; } public string getmodel() { return carmodel; } public string getcolour() { return carcolour; } public string getreg() { return carlicenseplate; } public static int getnominspkd() { return numberofminutesparked; } // use string methods // output sting public string tostring() { string pkdcar = "make: " + carmake + "\nmodel: " + carmodel + "\ncolor: " + carcolour + "\nlicense plate: " + carlicenseplate; return pkdcar; } }
then
/** * @(#)parkingmeter.java * * parkedcar application * * * @version 4.00 2014/2/9 */ public class parkingmeter { //define variables private static int minspurchsed; //define constructors // no argument constructor // set vaules 0 or null public parkingmeter() { // minspurchsed = 0; } // constructor accepts input public parkingmeter(int purchased) { minspurchsed = purchased; } // use set method // set variables - not needed public void setpurchased(int purchased) { minspurchsed = purchased; } // use methods // variables public static int getpurchased() { return minspurchsed; } // use string methods // output sting public string tostring() { string meterstring = "minutes purchased: " + minspurchsed; return meterstring; } }
then
/** * @(#)gardaofficer.java * * parkedcar application * * * @version 3.00 2014/2/9 * @version 4.50 2014/4/13 */ public class gardaofficer //extends parkedcar { // define variables //========================== private string name; private string badgenumber; private double ticket; // constructor accept variables //======================================== public gardaofficer(string n, string num) { name = n; badgenumber = num; } // no argument constructor //======================== public gardaofficer() { name = ""; badgenumber = ""; } // set methods //=============== public void setname(string n) { name = n; } public void setbadgenumber(string num) { badgenumber = num; } // methods //=============== public string getname() { return name; } public string getbadgenumber() { return badgenumber; } // string method //================= public string tostring() { string gardastring = "garda : " + this.name + "\nbadge: " + badgenumber + "\nticket: " + ticket; return gardastring; } public parkingticket search(parkedcar car, parkingmeter meter) { gardaofficer garda = new gardaofficer(this.name,this.badgenumber); int time = parkedcar.getnominspkd() - parkingmeter.getpurchased(); if(parkedcar.getnominspkd() > parkingmeter.getpurchased()) { if(time <= 60) { ticket = 50; } else { ticket = 50 + (10 * (time/60)); } } if(time <0) return null; return new parkingticket(car, garda, getticket(), time); } public double getticket() { return ticket; } public void setticket(double ticket) { this.ticket = ticket; } }
then
/** * @(#)parkingticket.java * * parkedcar application * * * @version 4.00 2014/2/9 */ public class parkingticket { //define variables private parkedcar vehicle; private gardaofficer guardstring; private double parkingfine; private int minutes; private double firstfine = 50; private double morefine = 50; public parkingticket() { } // constructor accepts input public parkingticket(parkedcar car, gardaofficer guard, double guyfine, int mins) { vehicle = car; guardstring = guard; parkingfine = guyfine; minutes = mins; } // use set method // set variables - not needed // use methods // variables public void gettotalfine() { int time = parkedcar.getnominspkd() - parkingmeter.getpurchased(); if (time <= 60) { parkingfine = firstfine; } else { parkingfine = firstfine + morefine * (time / 60); } } public double getfirstfine() { return firstfine; } public double getmorefine() { return morefine; } public parkedcar getvehicle() { return vehicle; } public gardaofficer getguardstring() { return guardstring; } public int getminutes() { return minutes; } public double getfine() { return parkingfine; } // use string methods // output sting public string tostring() { string ticketstring = "fine : " + this.parkingfine + "\nminutes: " + minutes + "\n" + vehicle.tostring() + "\n" + this.getguardstring().tostring(); return ticketstring; } }
finally
//this demo file show program public class democar { public static void main(string[] args) { parkedcar test1 = new parkedcar("bmw", "2014", "yellow", "141d12345", 30); parkingmeter parking = new parkingmeter(50); gardaofficer murphy = new gardaofficer("guard murphy", "10"); parkingticket ticket = murphy.search(test1, parking); if (ticket != null) { system.out.println(ticket.tostring()); } else { system.out.println("no ticket issued!"); } // second car checked see if passes or not, it's on parkedcar test2 = new parkedcar("vw", "2001", "green", "01d321", 225); parkingmeter parking2 = new parkingmeter(200); parkingticket ticket2 = murphy.search(test2, parking2); if (ticket != null) { system.out.println(ticket.tostring()); } else { system.out.println("no ticket issued!"); } } }
you're printing ticket instead of ticket2 second time around.
also should make variables lowercase.
Comments
Post a Comment