Thủ tục trong Pascal

Thủ tục (Procedure) trong Pascal là các chương trình con, thay vì trả về một giá trị duy nhất, nó cho phép trả về một nhóm kết quả. Để hiểu rõ hơn thủ tục trong Pascal là gì, bạn đọc tham khảo tiếp bài viết dưới đây

Các bài viết trước Taimienphi.vn đã giới thiệu cho bạn về các toán tử trong Pascal cũng như hằng và cách khai báo hằng trong Pascal. Bài viết này Taimienphi.vn sẽ giới thiệu tiếp cho bạn về thủ tục trong Pascal.

thu tuc trong pascal

Định nghĩa thủ tục trong Pascal

Trong Pascal, thủ tục được định nghĩa bằng cách sử dụng từ khóa Procedure. Cấu trúc chung của định nghĩa thủ tục có dạng như dưới đây:

procedure name(argument(s): type1, argument(s): type 2, ... );

< local="" declarations="">

begin

< procedure="" body="">

end;

Định nghĩa thủ tục trong Pascal bao gồm một header, các khai báo cục bộ và một phần của procedure. Header procedure bao gồm từ khoá procedure và tên được chỉ định cho thủ tục. Dưới đây là các phần của một thủ tục (procedure) trong Pascal:

- Argument: Các tham số tạo liên kết giữa chương trình gọi và các định danh thủ tục, còn được gọi là tham số hình thức. Quy tắc cho các tham số trong thủ tục giống như cho các hàm.

- Local declaration: Local declaration đề cập đến các khai báo cho các nhãn, hằng, biến, hàm và các thủ tục, chỉ áp dụng cho Procedure Body.

- Procedure Body: Procedure Body có chứa tập hợp các lệnh định nghĩa thủ tục. Nó luôn luôn đi kèm các từ Begin và End, và là một phần của thủ tục mà các phép toán được thực thi.

Dưới đây là mã nguồn của thủ tục có tên gọi là findMin(). Thủ tục này bao gồm 4 tham số x,y,z và m, và lưu trữ tối thiểu 1 trong 3 biến đầu tiên trong biến m. Biến m được truyền bằng tham chiếu.

thu tuc trong pascal 2

Khai báo thủ tục trong Pascal

Khai báo thủ tục trong Pascal để thông báo cho trình biên dịch về tên thủ tục và cách gọi thủ tục. Các phần của thủ tục được định nghĩa riêng biệt.

Cú pháp khai báo thủ tục có dạng như sau:

procedure name(argument(s): type1, argument(s): type 2, ... );

Lưu ý tên của thủ tục không liên quan đến các thứ khác. Ví dụ với định nghĩa thủ tục findMin() ở trên, dưới đây là cú pháp khai báo thủ tục:

procedure findMin(x, y, z: integer; var m: integer);

Gọi thủ tục trong Pascal

Trong quá trình tạo một thủ tục, bạn phải cung cấp định nghĩa về những gì thủ tục phải làm. Để sử dụng thủ tục, bạn phải gọi thủ tục đó để thục hiện các nhiệm vụ được chỉ định.

Khi một chương trình gọi thủ tục, chương trình kiểm soát sẽ được chuyển sang thủ tục được gọi. Một thủ thục được gọi thực thi các nhiệm vụ đã được chỉ định, khi thực thi đến lệnh End, nó sẽ mang chương trình kiểm soát trở lại chương trình gọi.

Để gọi thủ tục trong Pascal, chỉ cần đáp ứng đủ các tham số yêu cầu cùng với tên thủ tục như hình dưới đây:

thu tuc trong pascal 3

Khi đoạn mã trên được biên dịch và thực thi, nó sẽ trả về kết quả dưới đây:

thu tuc trong pascal 4

Chương trình con đệ quy trong Pascal

Một chương trình hoặc chương trình con có thể gọi các chương trình con khác. Khi một chương trình con gọi chính nó, chương trình đó được gọi là chương trình con đệ quy.

Để hiểu rõ hơn về chương trình con đệ quy trong Pascal, bạn tham khảo ví dụ tính giai thừa của số n được định nghĩa dưới đây:

thu tuc trong pascal 5

Chương trình dưới đây tính giai thừa của 1 số cho trước bằng cách tự gọi chính nó (còn được gọi là chương trình đó được gọi là chương trình con đệ quy):

thu tuc trong pascal 6

Khi đoạn mã trên được biên dịch và thực thi, nó sẽ trả về kết quả dưới đây:

thu tuc trong pascal 7

Dưới đây là ví dụ khác, tạo Fibonacci Series cho số cụ thể sử dụng hàm recursive:

thu tuc trong pascal 8

Khi đoạn mã trên được biên dịch và thực thi, nó sẽ trả về kết quả dưới đây:

thu tuc trong pascal 9

Đối số của một chương trình con

Nếu một chương trình con (hàm hoặc thủ tục) sử dụng các đối số, nó phải khai báo các biến chấp nhận các giá trị của đối số. Các biến này được gọi là các tham số hình thức của chương trình con.

Các tham số hình thức hoạt động như các biến cụ bộ trong chương trình con và được tạo ra khi mục nhập vào chương trình con và bị hủy khi thoát khỏi mục.

Khi gọi một chương trình con, có 2 cách để chuyển các đối số đến chương trình con.

thu tuc trong pascal 10

Mặc định Pascal sử dụng cách gọi theo giá trị để chuyển các đối số. Tức là mã trong chương trình con không thể thay đổi các đối số được sử dụng để gọi các chương trình con. Ví dụ hàm max () sử dụng cách gọi theo giá trị.

Các chương trình (exProcedure) gọi thủ tục findMin () ở trên sử dụng cách gọi bằng tham chiếu.

https://thuthuat.taimienphi.vn/thu-tuc-trong-pascal-33790n.aspx
Hy vọng sau bài viết trên bạn đọc sẽ có thêm nhiều thông tin về thủ tục trong Pascal. Ngoài ra để tìm hiểu rõ hơn về toán tử trong Pascal cũng như những ưu nhược điểm của Pascal, bạn đọc có thể tham khảo một số bài viết khác trên Taimienphi.vn nhé.

Tác giả: Trọng Tâm     (4.0★- 14 đánh giá)  ĐG của bạn?

  

Bài viết liên quan

Mảng trong Pascal
Biến kiểu Variant trong Pascal
Unit, đơn vị trong Pascal
Phạm vi của biến trong Pascal
Kiểu bản ghi trong Pascal
Từ khoá liên quan:

Thủ tục trong Pascal

, procedure trong pascal, định nghĩa thủ tục trong Pascal,

SOFT LIÊN QUAN
  • Pascal Study

    Lý thuyết và bài tập pascal

    Pascal Study là công cụ hỗ trợ bạn tự học lập trình Pascal hiệu quả. Phần mềm Pascal Study cung cấp đầy đủ các lý thuyết cơ bản và các bài tập thực hành từ dễ đến khó. Đặc biệt bạn có thể thực hành bằng cách viết chương ...
  • Pascal Phần mềm học lập trình Pascal
  • Pascal Analyzer Lite Phân tích, kiểm tra mã nguồn Pascal
  • Free Pascal Phần mềm học lập trình Pascal cơ bản và nâng cao
  • Olala Pascal Soạn thảo và biên dịch mã nguồn Pascal
  • CodeTyphon Trình biên dịch, khử lỗi Pascal

Tin Mới