Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

In m bội số của n không dùng vòng lặp trong Python

Cho số n, in m bội số của n không dùng vòng lặp. Ở đây ta dùng hàm đệ quy (recursive function).

Ví dụ

 Input: n = 15 Output: 15 10 5 0 5 10 15 

Thuật toán

 Bước 1: Cho n. Bước 2: Nếu đang quay về n và đã đến đó thì xong. Bước 3: Nếu đang đi về 0 hoặc âm. Bước 4: Nếu m lớn hơn 5, gọi đệ quy với flag True, ngược lại False. Bước 5: Nếu m không lớn hơn 5 thì flag là False. 

Mã ví dụ

 def printm(p, q, flag): print(q) if flag == False and p == q: return if flag: if q - 5 > 0: printm(p, q - 5, True) else: # Đệ quy với flag false printm(p, q - 5, False) else: # Nếu flag false printm(p, q + 5, False) # Mã điều khiển n = 15 printm(n, n, True) 

Kết quả

 15 10 5 0 5 10 15