01/10/2018, 15:18

Thắc mắc về câu lệnh return trong vòng đệ quy

def draw(t,length,n):
 if (n == 0):
 	return
 angle = 50
 t.fd(length*n)
 t.lt(angle)
 draw(t,length,n-1)
 t.rt(2*angle)
 draw(t,length,n-1)
 t.lt(angle)
 t.bk(length*n)	

Đây là bài tập 5.5 trong sách thinkpython2 ạ. Em thắc mắc ở chỗ nếu n = 0 thì return về cái gì ạ ?

Tên Gì Cũng Được viết 17:32 ngày 01/10/2018

thì không chạy gì nữa thôi chứ đâu có return về cái gì, như hàm kiểu void

vũ xuân quân viết 17:25 ngày 01/10/2018

Dùng để thoát đoạn code mình đang chạy.
Nên sẽ không có giá trị trả về.

Anonymous viết 17:32 ngày 01/10/2018

Em vẫn chưa hiểu lắm. Sau khi thoát đoạn code đó thì nó sẽ chạy tiếp ở chỗ nào ạ ? Anh có thể nói sơ cho em về thứ tự chương trình chạy ko ạ ?

HK boy viết 17:33 ngày 01/10/2018

Bạn đã biết về đệ quy là gì chưa? Nếu biết về đệ quy thì bạn cũng phải hiểu được đệ quy chạy như thế nào.

Kuroemon viết 17:26 ngày 01/10/2018

trong hàm draw, đầu tiên nó xét n có bằng 0 hay không, nếu n=0 thì thoát, n!=0 thì thực hiện tiếp

Bài liên quan
0