Tham khảo trước (Forward reference): Bình thường khi trong chương trình chính có hai chương trình con A, B được khai báo kế tiếp nhau A trước, B sau, thì B gọi được A nhưng A không gọi được B. Khi đó để A gọi được B ta phải tiến hành khai báo phần đầu của B với từ khóa Forward trước khi khai báo B đầy đủ. | SỰ THAM KHẢO TRƯỚC VÀ Sự ĐỆ QUI . Tham khảo trước Forward reference Bình thường khi trong chương trình chính có hai chương trình con A B được khai báo kế tiếp nhau A trước B sau thì B gọi được A nhưng A không gọi được B. Khi đó để A gọi được B ta phải tiến hành khai báo phần đầu của B với từ khóa Forward trước khi khai báo B đầy đủ. Ví dụ PROGRAM VIDU13_6 Procedure B Forward khai báo tham khảo B trước Procedure A Begin Writeln Chào chị B End Procedure B Begin Writeln Chào anh End BEGIN A Readln END. Chạy VD13 Chép tập tin nguồn VD13 Khi chương trình chạy sẽ in lên màn hình Chào chị Chào anh Tất nhiên nếu ta đưa khai báo đầy đủ B lên trước A thì không cần phải tham khảo trước. Song đặt giả thiết A gọi B rồi B lại gọi A thì nhất định phải tham khảo trước thôi. . Sự đệ qui Recursion Một thủ tục hay hàm có thể gọi chính nó khi đó ta nói có sự đệ qui. Ví dụ Tính S k bằng đệ qui. Ta viết 1 khi k 0 -1 1 khi k 0 Muốn tính k ta phải tính được k-1 muốn tính k-1 lại phải tính k-2 . suy ra cuối cùng phải tính được 0 nhưng vì 0 1 nên qúa trình kết thúc. Chương trình sau nhập N tính và in gía trị N . Trong chương trình có xây dựng và sử dụng một hàm đệ quy tính k PROGRAM VIDU13_7 Tính N bằng đệ qui Var N Byte Function Gt k Byte Real Hàm tính k bằng đệ qui