30/09/2018, 21:27
[Python] ai sửa em code vơi
em code lại Liệt kê các tập con k phần tử của tập n bằng hàm sinh giờ chạy bị lỗi index out of range code đây
`n = int(input("nhap n: "))
k = int(input("nhap k: "))
arr = []
def init():
for i in range(k):
arr.append(i)
return arr
def result():
for i in range(k):
print arr[i]
print "
"
def nextCombine():
i = k
while (i>0 and arr[i] == n - k + i):
i = i - 1
if i >0:
arr[i] = arr[i] + 1
for j in range(i + 1, k):
arr[j] = arr[j] + j - i
else:
stop = True
def combine():
stop = False
while (stop == False):
result()
nextCombine()
if __name__ == '__main__':
init()
combine()`
Bài liên quan
Dùng từ khoá
global
với arr hoặc truyền arr qua tham số của hàmvẫn lỗi bác ơi
Cả cái
stop
nữa…Thực ra bài của bạn nên sửa bằng cách dùng tham số, chứ viết như vậy rất dễ bị lộn và mất kiểm soát.