Đệ quy. Mô phỏng vòng lặp
Chúng ta đã thấy rằng đệ quy là việc thực hiện lặp đi lặp lại các lệnh chứa trong một chương trình con. Và điều này, đến lượt nó, tương tự như công việc của chu kỳ. Có những ngôn ngữ lập trình hoàn toàn không có cấu trúc vòng lặp, chẳng hạn như Prolog.
Hãy thử mô phỏng hoạt động của vòng lặp
for
.
Vòng lặp
for
chứa một biến đếm bước. Trong chương trình con đệ quy, một biến như vậy có thể được truyền dưới dạng tham số.
// Quy trình LoopImitation() với 2 tham số.
// Tham số đầu tiên – bộ đếm bước, tham số thứ hai – tổng số bước.
void LoopImitation(int i, int n)
{
cout << "Xin chào N" << tôi << kết thúc; // Toán tử được lặp lại với bất kỳ giá trị nào của i
if (i < n) // Cho đến khi bộ đếm vòng lặp bằng n,
{ // gọi một thể hiện mới của thủ tục, với tham số i+1 (đi tới giá trị tiếp theo i).
LoopImitation(i + 1, n);
}
}