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()`
Gió viết 23:37 ngày 30/09/2018

Dùng từ khoá global với arr hoặc truyền arr qua tham số của hàm

Hoàng Trung Hiếu viết 23:33 ngày 30/09/2018

vẫn lỗi bác ơi

Gió viết 23:38 ngày 30/09/2018

Cả cái stop nữa…

anon10499953 viết 23:30 ngày 30/09/2018

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.

Bài liên quan
0