Python Never - Ending While Loop
<p>Currently I'm working in Python to try and simulate a set in a match of tennis based on player probabilities. There's a while loop that's never ending in my "ftsix" (firsttosixpoints) function, but I can't figure out what the bug is because my logic isn't sound. I've been working on the problem for a few hours but I can't seem to find the solution.</p>

<p>P.S - please play nice</p>

<pre><code>#One set in tennis = 1st to 6 games
#One game = 1st to four points
#Serve switches after each game. 


def main():
    printIntro()
    probA, probB = getInputs()
    gamesA, gamesB = ftsix(probA, probB)
    if gamesA &gt; gamesB:
        print"Player A has won with", gamesA, "to player B's", gamesB, "."
    else:
        print "Player B has won with", gamesB,"to player A's", gamesA, "."

def printIntro():
    print "This is a simulation of 1 tennis set based on player probabilities!" 

def getInputs():
    probA = input("What is the probability that player A will win?: ")
    probB = input("What is the probability that player B will win?: ")
    return probA, probB 

def ftsix(probA, probB):
    #First one to six games = one set
    x = 0
    gamesA = 0
    gamesB = 0
    while gamesA or gamesB != 6:
        if x % 2 == 0 or x == 0:
            serving = "A"
        else:
            serving = "B"
        #This is one game, not in a seperate function because I couldn't figure out how to change serve inside the function!
        pointsA = 0
        pointsB = 0
        while pointsA or pointsB != 4:
            if serving == "A":
                if probA &gt;= random():
                    pointsA = pointsA + 1
                else:
                    pointsB = pointsB + 1
            if serving == "B":
                if probB &gt;= random():
                    pointsB = pointsB + 1
                else:
                    pointsA = pointsA + 1
        if pointsA &gt; pointsB:
            gamesA = gamesA + 1
        else:
            gamesB = gamesB + 1
        x = x + 1
    return gamesA, gamesB
</code></pre>