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 trial

Python Python Basics (2015) Letter Game App Even or Odd Loop

Kaci Jenkins
Kaci Jenkins
860 Points

Task 3 keeps kicking back a communication error?

I have contacted support and they suggested I: switch to google chrome(done), and try performing the task in an incognito window(done). Now they're saying my code could be SO VERY BAD that it's kicking back. Someone help me please. I've been stuck in the same place for almost two weeks.

even.py
import random

start = 5

def even_odd(num):
    # If % 2 is 0, the number is even.
    # Since 0 is falsey, we have to invert it with not.
    return not num % 2

while start:
    num = random.randint(1, 99)
    if even_odd(num) == 0:
        print("{} is even".format(num))
    else:
        print("{} is odd".format(num))

start -=1

1 Answer

Jennifer Nordell
seal-mask
STAFF
.a{fill-rule:evenodd;}techdegree
Jennifer Nordell
Treehouse Teacher

Hi there! You're doing really well, but the reason you've gotten a communication error here is that you've created an infinite loop. The start -= 1 needs to be indented inside your while loop. Currently, it's on the outisde of your while loop which means the decrement is never happening. At this point, start is always equal to 5 and never being changed.

Try fixing the indentation and running it again! :sparkles:

edited for additional hint

:bulb: Once you fix the indentation of the start -= 1, you will need to make one teensy adjustment to get it to pass. The even_odd function returns a true or false, but you're comparing it to 0. Erase the == 0 from your if statement and your code passes with flying colors!