# RH-Schk-O(E)-U(EHS)-2H from random import randrange from datetime import datetime t1 = datetime.now() z = {}; k = {} # array tr_x={}; nrS_f={}; nrG_f={}; nrH_f={} k[1]='9_E'; k[2]='9_G'; k[3]='9_H'; k[4]='9_S' k[5]='10E'; k[6]='10G'; k[7]='10H'; k[8]='10S' k[9]='U_E'; k[10]='U_G'; k[11]='U_H'; k[12]='U_S' k[13]='O_E'; k[14]='O_G'; k[15]='O_H'; k[16]='O_S' k[17]='K_E'; k[18]='K_G'; k[19]='K_H'; k[20]='K_S' k[21]='A_E'; k[22]='A_G'; k[23]='A_H'; k[24]='A_S' for i in range(1,5): nrS_f[i]=0; nrG_f[i]=0; nrH_f[i]=0 # flags false #endfor i ns=0; tr=0; ogr=10000 su9=0; su10=0; suu=0; suo=0; suk=0; sua=0; su_ges=0 nr9=0; nr10=0; nrU=0; nrO=0; nrK=0; nrA=0 nr_3=0; nr_4=0; nr_5=0 nr9_E=0; nr9_G=0; nr9_H=0; nr9_S=0; nr10_E=0; nr10_G=0; nr10_H=0; nr10_S=0; nrU_E=0; nrU_G=0; nrU_H=0; nrU_S=0; nrO_E=0; nrO_G=0; nrO_H=0; nrO_S=0; nrK_E=0; nrK_G=0; nrK_H=0; nrK_S=0; nrA_E=0; nrA_G=0; nrA_H=0; nrA_S=0; def zf_ausg(z): c = randrange(1,25) z[1] = c for i in range(2,25): c = randrange(1,25) z[i] = c j=0 while j0: nrG_f[sp]=1 # true if nrO>1: nrH_f[sp]=1 # true #enddef stat def rh(zahl): zahl = float((zahl*100/ogr)) return zahl # enddef rh print('Anzahl der Kartenspiele vorteilhaft >=1000000') ogr = int(input('Anzahl der Kartenspiele: ')) print() print('Kurzer Schafkopf mit 24 Karten; 4 Spieler,',ogr,'Spiele') print('9 = Neuner, 10 = Zehner, U = Unter, O = Ober, K = König, A = Ass') print('E = Eichel, G = Grün, H = Herz, S = Schellen, RH = Relative Häufigkeit') print() for anzahl in range(1,ogr+1): zf_ausg(z) for sp in range(1,5): nrS_f[sp]=0; nrG_f[sp]=0; nrH_f[sp]=0 #false stat(sp,k,z) if nrS_f[1]==1: ns = ns + 1 if tr_x[sp]==3 and nrG_f[sp]==1: karten(sp) nr_3 = nr_3 + 1 # Anzahl Trümpfe 3(>=1O) if tr_x[sp]==4 and nrH_f[sp]==1: karten(sp) nr_4 = nr_4 + 1 # Anzahl Trümpfe 4(>=2O) if tr_x[sp]==5: karten(sp) nr_5 = nr_5 + 1 # Anzahl Trümpfe 5 # endfor print() print('Es gibt',ns,'-mal den Solo O(E)-U(EHS)-2H: RH = ','%1.4f' % (rh(ns)),'%') print('Spieler 1 hat',int(ns/4),'-mal den Solo O(E)-U(EHS)-2H.') print('Ein Gegenspieler hat',nr_3,'-mal 3 Trümpfe (>=1O): RH =','%2.3f' % (4*100*nr_3/ns),'%') print('Ein Gegenspieler hat',nr_4,'-mal 4 Trümpfe (>=2O): RH =','%2.3f' % (4*100*nr_4/ns),'%') print('Ein Gegenspieler hat',nr_5,'-mal 5 Trümpfe: RH =','%2.3f' % (4*100*nr_5/ns),'%') print() t2 = datetime.now() print('Rechenzeit:',t2-t1)