while loop number sort counter odd vs. evens

Viewed 27

Hi I am trying to create a program that finds evens and odd numbers. I produce a random number and then separate into odds/evens, count if odd or even and then stop the program when I have 5 more odds than evens. I have an indentation error. Can someone point me in the right direction?

evens=0
odds=0
while odds- evens >= 5:
    def getrandom():
        number= random.randint (1,99)
        return number

    digit= random.randint(1,99)
    if digit %2 ==0:
        evens=evens +1
        print ("there are", evens, "numbers")
    else:
        odds = odds +1
        print ("there are", odds, "numbers")
1 Answers

The while condition odds - evens >= 5 is false since 0 - 0 isn't greater than 5 and that's why it isn't working

import random

def getrandom():
    number= random.randint (1,99)
    return number

evens=0
odds=0


while odds - evens < 5:
    digit = getrandom()
    if digit %2 ==0:
        evens=evens +1
        print ("there are", evens, " even numbers")
    else:
        odds = odds +1
        print ("there are", odds, " odds numbers")

About the indentation, the error was on the function getrandom

def getrandom():
    number= random.randint (1,99)
    return number

Related