card dealer

markotaht at gmail.com markotaht at gmail.com
Fri Sep 27 06:24:28 EDT 2013


from random import *
from math import floor


kaarte_alles = 52
kaart_tõmmatud = [False for i in range(52)]


mast = ["ärtu", "ruutu", "poti", "risti"]
aste = ["äss", "kaks", "kolm", "neli","viis", "kuus", \
        "seitse", "kaheksa", "üheksa", "kümme", "soldat",\
        "emand", "kuningas"]

def tõmba_kaart():
    global kaarte_alles
    if kaarte_alles == 0:
        print("Segan pakki")
        kaarte_alles = 52
        for i in range(52):
            kaart_tõmmatud[i] = False
    kaarte_alles -= 1
    n = random(kaarte_alles)
    kaart = vali_järgmine_vaba(n)
    m = kaart % 13
    a = kaart / 13
    print(mast[int(a)] + " " + aste[int(m)])

def vali_järgmine_vaba(n):
    i = -1

    while(n  > 0):
        n -= 1
        i = i + 1
        while kaart_tõmmatud[i]:
            i = i + 1
    kaart_tõmmatud[i] = True
    return i

def random(n):
    return randint(0, n)

while True:
    n = int(input("Mitu kaarti tõmmata(0 et väljuda): "))
    if(n==0):
        break

    for i in range(n):
        tõmba_kaart()


HI im trying to make a card dealer, but this code doesent work correctly. It deasl cards, but the cards to repeat. when i type in 52 ten i might get 3 the same cards. This is a translation from my c++ code. In c++ it works correctly.



More information about the Python-list mailing list