Форум сайта python.su
0
В общем вот программа:
import random week = [] pn = []; vt = []; sr = []; ct = []; pt = []; sb = [] g = int(input("BBeguTe KoJIu4ecTBo hpegMeToB B geHb: ")) prs = int(input("BBeguTe KoJIu4ecTBo hpegMeToB (o6LLLee) : ")) i = 0 ii = 0 while i < prs: week.append(raw_input()) i += 1 random.shuffle(week) def days(a): if ii == g: g = g + g while ii < g: a.append(week[ii]) ii += 1 else: while ii < g: a.append(week[ii]) ii += 1 days(pn); days(vt); days(sr); days(ct); days(pt); days(sb) print("TIoHegeJIbHuk: ", pn) print("BTopHuK: ", vt) print("Cpega: ", sr) print("4eTBepr: ", ct) print("TI9ITHuLLa: ", pt) print("Cy66oTa: ", sb)
Отредактировано Ahmasoft (Май 10, 2016 16:13:34)
Офлайн
568
Потому что
def days(a): global i if ii == g:
Офлайн
0
Может
global ii
global i
Офлайн
568
Ну разумеется
Офлайн
0
В общем вот что получилось:
import random week = [] pn = []; vt = []; sr = []; ct = []; pt = []; sb = [] g = int(input("BBeguTe KoJIu4ecTBo hpegMeToB B geHb: ")) prs = int(input("BBeguTe KoJIu4ecTBo hpegMeToB (o6LLLee) : ")) i = 0 while i < prs: week.append(raw_input()) i += 1 random.shuffle(week) def days(a): ii = 0 global g if ii == g: iii = ii g = g + g while ii < g: a.append(week[ii-iii]) ii += 1 else: while ii < g: a.append(week[ii]) ii += 1 return ii days(pn); days(vt); days(sr); days(ct); days(pt); days(sb) print("TIoHegeJIbHuk: ", pn) print("BTopHuK: ", vt) print("Cpega: ", sr) print("4eTBepr: ", ct) print("TI9ITHuLLa: ", pt) print("Cy66oTa: ", sb)
Офлайн
568
Ничего вы не узнаете, у вас кажется проблемы с логикой
if ii == g: while ii < g:
Офлайн
0
Не то отправил. Вот:
import random week = [] pn = []; vt = []; sr = []; ct = []; pt = []; sb = [] g = int(input("BBeguTe KoJIu4ecTBo hpegMeToB B geHb: ")) prs = int(input("BBeguTe KoJIu4ecTBo hpegMeToB (o6LLLee) : ")) i = 0 ii = 0 while i < prs: week.append(raw_input()) i += 1 random.shuffle(week) def days(a): global g global ii if ii == g: while ii >= g: a.append(week[ii]) ii -= 1 else: while ii < g: a.append(week[ii]) ii += 1 return ii days(pn); days(vt); days(sr); days(ct); days(pt); days(sb) print("TIoHegeJIbHuk: ", pn) print("BTopHuK: ", vt) print("Cpega: ", sr) print("4eTBepr: ", ct) print("TI9ITHuLLa: ", pt) print("Cy66oTa: ", sb)
Офлайн
568
Давайте мы поступим по-другому. Вы толково изложите задачу, а кто-нибудь из местных или я (если позволят обстоятельства) вам помогут с решением. От вашего кода, честно говоря, хочется чесаться, поэтому лучше сделать по-правильному, да и вам будет мастер-класс.
Офлайн