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

Balázs Krasznai
Balázs Krasznai
1,041 Points

What is the complete code for even.py? I can't seem to get it right and I'm frustrated. Help.

Someone help.

even.py
import random
start =  5

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

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

4 Answers

Umesh Ravji
Umesh Ravji
42,386 Points

Hey there, being frustrated is part of the learning process. You were really close to the answer, just minor issues.

First thing to be done is to make sure that the while loop finishes executing when start isn't truthy anymore. Change your condition too:

while start:

You're print statements have a small issue. You have one of the closing brackets in the wrong places. Correct both of these and you have the answer.

print("{} is even".format(num))
Balázs Krasznai
Balázs Krasznai
1,041 Points

Thanks, I also needed to move the fuction before the while loop. Other than that I really appreciate your quick and helpful reply!

Cheers!

Hi,

I used this code and it worked:

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 != 0: x = random.randint(1,99) y = even_odd(x) if y is True: print("{} is even".format(x)) else: print("{} is odd".format(x))

start = start - 1

Hope it helps

Balázs Krasznai
Balázs Krasznai
1,041 Points

I'll try it Pedro Leão. And thanks for the helpful comment!