I’m working on a public transport card system which records the no. of stops of the journey and then calculates the costs. I’m a bit lost with this program and I hope you can help me...
Features; the fare for up to 3 stops is charged £4, after than each stop is calculated as £2. How can I calculate the difference in stops between firstStop and lastStop? Also, how do I calculate the price? Let’s say they get on the bus on ‘stop 3’ and go to ‘stop 9’, how would I code this?
From what I know, it seems that I have to do two different things;
a) Firstly, code a calculation which checks the difference between the stops, i.e. 6 stops – but then again, what if they go from ‘stop 7’ to ‘stop 2’? I will end up with negative numbers!
b) Secondly, I have to put the no. of stops in a calculation that will determine the cost...
So in short I need help with the following;
1) How can I calculate the difference between the stops without going into negative figure?
2) How can I code a calculation which says; if stops = ‘1, 2, 3’ then charge £4, anything higher add £2 for each stop.
I urgently need some guidance regarding this,
the best way to start writing code is to NOT write ANY code.
The first thing i'd do is write down on paper how the logic should work. I.e. what kinds of things do i need to know? Do I need to know what time someone boarded a bus? the city they are in? where they got on? etc.
once i knew what was important, i'd start looking at logic. There appear to be two conditions for your scenario, traveling three or less stops, or traveling more than three.
the logic for under 3 is easy - it's always £4.
over 3 stops is a little harder, but it appears to be £4 plus some amount you'll have to calculate.
once you have it figured out on paper, start coding small pieces of it and testing the small parts. Do NOT just try and code the whole thing at once and test it when you think you're done, or you'll have too many problems.
There are only two hard things in computer science: cache invalidation, naming things, and off-by-one errors