Форум сайта python.su
Привет, вот моя программа, которая проверяет есть ли в строчке и в столбце одинаковые символы(типа судоку):
from random import randint num=input('Enter count of rows: ') num=int(num) D=[] for n in range(0,num): d=[] for n in range(0,num): d.append(0) D.append(d) L=[] for k in range(0,len(D)): l=[] for i in range(0,len(D)): l.append(D[i][k]) L.append(l) for i in range(0,len(D)): for k in range(0,len(D)): while D[i].count(D[i][k])>=2 or L[k].count(L[k][i])>=2 or D[i][k]==0: D[i][k]=randint(1,num) L[k][i]=D[i][k] print('\n') for n in D: print(n)
Офлайн
замените эту жесть)
D=[] for n in range(0,num): d=[] for n in range(0,num): d.append(0) D.append(d) L=[] for k in range(0,len(D)): l=[] for i in range(0,len(D)): l.append(D[i][k]) L.append(l)
D=[[0 for i in xrange(num)] for j in xrange(num)] L=[[0 for i in xrange(num)] for j in xrange(num)]
Отредактировано Aris_P@ (Ноя. 14, 2013 09:17:20)
Офлайн
Aris_P@Спасибо огромное, я вообще не додумался до этого, придется исправлять!
а зацикливается прога потому что вам не везет при генерации случайных чисел - например(возьмем num=3) пусть первая строка сгенерировалась такой - (2,3,1), а первые 2 члена второй строки сгенерировались - (3, 2, x).
Офлайн