import random
n = 50
showProcess = False
raw_gamet = 'pk'
row = []
row_o = 0
column = []
column_o = 0
o = 1
split = ' '
filial = ''
pos = []
gamet = []
gamet_o = 0
gamet_row = 0
gamet_column = 0
def upper_low(string_src, add_to_list):
add_to_list += [string_src.upper()]
add_to_list += [string_src.lower()]
def add(x, y, z):
z += [x + y]
def upper_lowwer_sort(gamet1, gamet2):
picked1 = gamet1
picked2 = gamet2
global filial
if picked1[0].isupper() == True:
filial = filial + picked1[0]
if picked2[0].isupper() == True:
filial = filial + picked2[0]
if picked1[0].islower() == True:
filial = filial + picked1[0]
if picked2[0].islower() == True:
filial = filial + picked2[0]
if picked1[1].isupper() == True:
filial = filial + picked1[1]
if picked2[1].isupper() == True:
filial = filial + picked2[1]
if picked1[1].islower() == True:
filial = filial + picked1[1]
if picked2[1].islower() == True:
filial = filial + picked2[1]
def unique(numbers):
unique = []
for number in numbers:
if number in unique:
continue
else:
unique.append(number)
return unique
for i in range(len(raw_gamet)):
if o == 1:
upper_low(raw_gamet[0], row)
print(row)
upper_low(raw_gamet[1], column)
print(column)
for i in range(len(column)):
add(row[row_o], column[column_o], gamet)
if column_o != len(column) - 1:
column_o += 1
else:
column_o = 0
if row_o != len(row) - 1:
row_o += 1
else:
row_o = 0
o += 1
print('\nGamet:')
print(gamet)
for i in range(len(gamet)):
picked1 = gamet[gamet_row]
for i in range(len(gamet)):
picked2 = gamet[gamet_column]
upper_lowwer_sort(picked1, picked2)
pos += [[filial]]
filial = ''
if gamet_column != len(gamet) - 1:
gamet_column += 1
else:
gamet_column = 0
if gamet_row != len(gamet) - 1:
gamet_row += 1
else:
gamet_row = 0
print('\nKemungkinan:')
print(pos)
if showProcess == True:
print('\nProses:')
filial = ''
for i in range(n):
pos_num = 0
picked1 = random.choice(gamet)
picked2 = random.choice(gamet)
upper_lowwer_sort(picked1, picked2)
for i in range(len(pos)):
if filial == pos[pos_num][0]:
if len(pos[pos_num]) != 1:
count = pos[pos_num][1]
count += 1
pos[pos_num][1] = count
else:
count = 0
count += 1
pos[pos_num] += [count]
if pos_num < len(pos):
pos_num += 1
if showProcess == True:
print(filial)
filial = ''
pos = unique(pos)
pos_num = 0
print('\nJumlah:')
for i in range(len(pos)):
print(pos[pos_num][0] + split + str(pos[pos_num][1]))
if pos_num < len(pos):
pos_num += 1
pos_num = 0
count = 0
print('\nJumlah total:')
for i in range(len(pos)):
count += pos[pos_num][1]
if pos_num < len(pos):
pos_num += 1
print(count)