Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialWilson Gardner
20,464 Pointsround() vs math.ceil() for total_due
Why not use round(total_due / people, 2) which would return the total rounded to two decimal places instead of ceil() which will round up to the nearest int?
2 Answers
Steven Parker
231,269 PointsCraig explains this at about 5:15 in the video when he says:
I'm pretty sure that most people don't even have the $0.24 on them. So what happens usually, is whoever is paying the bill ends up paying the extra money for everybody.
So that's why he doesn't round to cents (two places). He then explains the use of "ceil" instead of "round":
The fairest solution that I can think of is to round up to the next dollar. Now note, if we use the round function here it would round down, right, cuz $21.24 will go down to $21. But I'm suggesting that we should pay $22.
Wilson Gardner
20,464 PointsSteven, Thanks for the response. Yeah I realized that once I actually ran through it a few times using round(). Even if you get close, your total can end up being off by .01 which is no good for the restaurant. LOL. I appreciate the response.