Bài giảng Nhập môn tin học - Chương 2 - Ngô Quang Thạch

pptx 12 trang Hùng Dũng 05/01/2024 130
Bạn đang xem tài liệu "Bài giảng Nhập môn tin học - Chương 2 - Ngô Quang Thạch", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptxbai_giang_nhap_mon_tin_hoc_chuong_2_ngo_quang_thach.pptx

Nội dung text: Bài giảng Nhập môn tin học - Chương 2 - Ngô Quang Thạch

  1. Chương 2 NHẬP MÔN TIN HỌC NGÔ QUANG THẠCH ngoquangthach@yahoo.com 1/9/20241/9/2024
  2. NỘI DUNG vKhái niệm vThủ tục và hàm vChuyển tham số cho chương trình con vFunction và cách lựa chọn vBiến toàn cục và biến địa phương vTính đệ qui của CTC vĐơn vị chương trình (Unit) 1/9/2024 2
  3. Khái niệm vChương trình con (CTC) là một đoạn chương trình thực hiện trọn vẹn hay chỉ một chức năng nào đó. vCó 2 dạng CTC: § Thủ tục (PROCEDURE): Dùng để thực hiện một hay nhiều nhiệm vụ nào đó. § Hàm (FUNCTION): Thực hiện tính toán và Trả về một giá trị nào đó. vNgoài ra, trong Pascal còn cho phép các CTC lồng vào nhau. 1/9/2024 3
  4. CHƯƠNG TRÌNH CON CTC PROCEDURE FUNCTION FUNCTION HAM[(Các tham PROCEDURE THUTUC[(Các số)]: ; tham số)]; [Khai báo Const, Type, Var] [Khai báo Const, Type, Var] BEGIN BEGIN HAM:= ; END; BEGIN {Chương trình chính} END; THUTUC[( )]; A:= HAM[( )]; END. 1/9/2024 4
  5. Cấu trúc PROGRAM ProgName; VAR a,b: type1; x:type2 a,b,x là PROCEDURE Proc1(t,h:type1; Var k:type2); VAR x,y biến toàn Begin . x,y là cụcbiến End; địa phương FUNCTION func1(r:type): type; Var x Begin . End; BEGIN . END. 1/9/2024 5
  6. VÍ DỤ v Ta xây dựng hàm tính diện tích hình tròn truyền tham số vào là bán kính của hình tròn. Function DienTichHinhTron(Radius:Real):Real; Begin DienTichHinhTron := PI * Radius* Radius; End; v Thủ tục INSO sau sẽ in các số từ 1 đến giá trị biến truyền vào. So là tham truyền vào thủ tục Procedure INSO(So: Integer); Var i: Integer; Begin For i := 1 to So do Write( i:10 ); End; 1/9/2024 6
  7. Program TEST; Var n: Integer; {biến toàn cục} { } Procedure INSO(So: Integer); Var i: Integer; {biến địa phương} Begin For i := 1 to So do Write( i:10 ); End; { Chương trình chính } Begin Write(‘Nhập một số bất kỳ lớn hơn 0: ’); Readln(n); INSO( n ); Readln; End. 1/9/2024 7
  8. BIẾN TOÀN CỤC VÀ BIẾN ĐỊA PHƯƠNG vBiến toàn cục: là các biến được khai báo trong chương trình chính. Các biến này có tác dụng ở mọi nơi trong toàn bộ chương trình. vBiến địa phương: là các biến được khai báo trong các CTC. Các biến này chỉ có tác dụng trong phạm vi CTC đó mà thôi. vChú ý: Trong một CTC, nếu biến toàn cục trùng tên với biến địa phương thì biến địa phương được ưu tiên hơn. 1/9/2024 8
  9. THAM TRỊ VÀ THAM BIẾN v Tham trị: là tham số truyền vào CTC không có từ khoá VAR đứng trước, sau khi ra khỏi CTC giá trị của nó không bị thay đổi. v Tham biến: là tham số truyền vào CTC có từ khoá VAR đứng trước, vì sau khi ra khỏi CTC giá trị của nó bị thay đổi v Ví dụ: Viết chương trình con để tìm điểm đối xứng của điểm (x,y) qua gốc tọa độ. Ý tưởng: Vì bài toán này trả về tọa độ điểm đối xứng (xx,yy) gồm 2 giá trị nên ta dùng thủ tục. Procedure DoiXung(x,y:Integer; Var xx,yy:Integer); Begin xx:=-x; yy:=-y; End; x, y được gọi là tham trị xx, yy được gọi là tham biến 1/9/2024 9
  10. ĐỆ QUI vTrong một chương trình, một CTC có thể gọi một CTC khác vào làm việc. Nếu như CTC đó gọi lại chính nó thì gọi là sự đệ qui. 1/9/2024 10
  11. BÀI TẬP vViết chương trình tính diện tích các hình: § - 1. Hinh chu nhat. § - 2. Hinh vuong. § - 3. Hinh tron. § - 4. Ket thuc. vLựa chọn một mục của menu bằng cách ấn số tương ứng, ấn phím số 4 máy dừng chương trình (Mỗi mục ta viết thành mỗi CTC) 1/9/2024 11
  12. 1/9/20241/9/2024