HỌC TIẾNG ANH NGAY TỪ BÂY GIỜ ĐỂ KHÔNG PHẢI HỐI TIẾC VỀ SAU

Đệ qui

  • 74 lượt xem
  • Trả lời cuối 12 Tháng Mười Hai 2016
  • Đã được giải quyết
Hoàng Quân # 08 Tháng Mười Hai 2016

Vậy thì cuối cùng nó trả 1 hả m.n ? chứ nó đâu có trả về n!về 

Hoàng Quân # 08 Tháng Mười Hai 2016

Giải thích giùm em chỗ return 1 với ạ. 

Kiệt Tấn Lê # 12 Tháng Mười Hai 2016

Trả về 1 nếu e nhập n nhỏ hơn hoặc bằng 0.

Còn khi xét mà n lớn 0 thì nó sẽ trả về n nhân với Factorization(n - 1).

Ví dụ 3! nó sẽ xét  như sau :

Ta tính F(3)
3 > 0 đúng
return 3*F(3 - 1) <=> return 3*F(2)
Ta tính F(2)
2 > 0 đúng
return 2*F(2 - 1) <=> return 2*F(1)
Ta tính F(1)
1 > 0
return 1*F(1 - 1) <=> return 1*F(0)

Ta tính F(0)
0 <= 0 đúng => return 1;

Vậy 3! = F(3) = 3*F(2) = 3*2*F(1) = 3*2*1*F(0) = 3.2.1.1 = 6

Đóng
HỌC ĐỂ BIẾT HỌC ĐỂ LÀM HỌC ĐỂ CHUNG SỐNG HỌC ĐỂ TỰ KHẲNG ĐỊNH MÌNH