Câu hỏi 6
Vẽ đệ quy có thể tạo họa tiết phức tạp bằng vài dòng lệnh, còn được gọi là nghệ thuật thuật toán. Đây là ví dụ đường cong Koch và các đường tròn đệ quy.


Đệ quy là hàm tự gọi chính nó, giống các ảnh phản chiếu liên tiếp giữa hai gương đối diện. Nguồn cho thuật toán DrawSquare(x,y,s):
1. Vẽ hình vuông cạnh s, tâm (x,y).
2. Nếu cạnh nhỏ hơn 2 pixel:
DrawSquare(x+s/2,y,s/2), vẽ hình nhỏ hơn bên phải;
DrawSquare(x−s/2,y,s/2), vẽ hình nhỏ hơn bên trái.
Có thể tạo họa tiết nào?

Quy ước biên tập để có đáp án có điều kiện: giữ nguyên quy tắc “nhỏ hơn” in ở trên, nhưng khi vẽ có kết thúc thì hiểu tiếp tục đệ quy khi s≥2, dừng sau khi vẽ nếu s<2. Nguồn chưa xác nhận đây là sửa chữa dự định.


Đệ quy là hàm tự gọi chính nó, giống các ảnh phản chiếu liên tiếp giữa hai gương đối diện. Nguồn cho thuật toán DrawSquare(x,y,s):
1. Vẽ hình vuông cạnh s, tâm (x,y).
2. Nếu cạnh nhỏ hơn 2 pixel:
DrawSquare(x+s/2,y,s/2), vẽ hình nhỏ hơn bên phải;
DrawSquare(x−s/2,y,s/2), vẽ hình nhỏ hơn bên trái.
Có thể tạo họa tiết nào?

Quy ước biên tập để có đáp án có điều kiện: giữ nguyên quy tắc “nhỏ hơn” in ở trên, nhưng khi vẽ có kết thúc thì hiểu tiếp tục đệ quy khi s≥2, dừng sau khi vẽ nếu s<2. Nguồn chưa xác nhận đây là sửa chữa dự định.