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

it looks Task 1 is not passing

My code appears correct on even.py but cant get it correct

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 num % 2

while start:
    num1 = random.randint(1, 99)

    if even_odd(num):
    print('{} is even'.format(num1))
    else:
    print('{} is odd'.format(num1))

    start -=1

2 Answers

Andrei Oprescu
Andrei Oprescu
9,547 Points

Your code looks fine. Your mistake is very hard to spot, but it is a line 12. In that line you called function even_odd(num), but you put the wrong argument. Instead, put even_odd(num1).

Hope this helps!

You've also mixed up true and false - if num % 2 = 0, the number is even and your function returns false. However, at the bottom, when the even_odd is true (that is, when num % 2 is 1 and the number is odd), you are saying that it is even.

Also, indent the print commands.