Problem

2/12

đệ quy. Mô phỏng chu kỳ

Theory Click to read/hide

Đệ 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); } }

Problem

Nghiên cứu chương trình dưới đây và sắp xếp trong chương trình chính một lời gọi thủ tục với các tham số i=1, n=10. #include <iostream> sử dụng không gian tên std; //Procedure LoopImitation() với hai 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 cho 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); } } chủ yếu() { // ở đây cần gọi thủ tục với các tham số i=1, n=10. }