Welcome to the Treehouse Community
The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Jordan Siu
10,042 PointsWhat am I not understanding from %?
For those familiar with the book, I'm doing ex3.py from Learn Python the Hard Way. My code is fine and dandy (minus the floating points, but that's for another topic) but what I can't seem to comprehend is %. I've never been very good at math and can't wrap my head around it but I'm hoping that someone could dissect the logic in this fairly similar but different equation.
Why is it that 100 - 25 * 6 % 4 = 98 Why not 95? 100 - ((25*6) % 4) 100 - ((150) % 4) If the remainder of 150 / 4 is 5 how is it that I'm getting 98?
What am I missing?
1 Answer

Steven Parker
216,012 PointsThe "remainder" is what is left over after division. It will always be smaller than the operand. So "anything % 4" can never be larger than 3, and certainly not 5.
Here are some examples:
0 % 4 = 0 148 % 4 = 0
1 % 4 = 1 149 % 4 = 1
2 % 4 = 2 150 % 4 = 2
3 % 4 = 3 151 % 4 = 3
4 % 4 = 0 152 % 4 = 0

Jordan Siu
10,042 PointsOh man thanks, I finally get it. I was going above and beyond from what I was meant to do.
So to simplify things, the first remainder I get is what I'm meant to take?
Robert Uhler
3,637 PointsRobert Uhler
3,637 PointsNot quite sure how you are getting to 98 or 95 but the first problem is your calculation of the remainder. 150 % 4 is not 5 but 2. The remainder is 2. Perhaps this is where you issues lies. 150/ 4 == 37 R2