Bài giảng Hệ quản trị cơ sở dữ liệu - Bài 5: Tạo bảng và các ràng buộc toàn vẹn dữ liệu (Tiếp theo)

Nội dung chính

Định nghĩa lập trình hướng cấu trúc

 Khai báo, hiện thực và gọi thủ tục

 Khai báo và gọi thủ tục có tham số

 Khai báo, hiện thực và gọi hàm

 Khai báo và gọi hàm có tham số

 Giới thiệu về tầm vực của biến

 Tầm vực của tham số

 

ppt27 trang | Chia sẻ: hienduc166 | Lượt xem: 634 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Hệ quản trị cơ sở dữ liệu - Bài 5: Tạo bảng và các ràng buộc toàn vẹn dữ liệu (Tiếp theo), để xem tài liệu hoàn chỉnh bạn click vào nút TẢI VỀ ở trên
Nội dung chính Định nghĩa lập trình hướng cấu trúc Khai báo, hiện thực và gọi thủ tục Khai báo và gọi thủ tục có tham số Khai báo, hiện thực và gọi hàm Khai báo và gọi hàm có tham số Giới thiệu về tầm vực của biến Tầm vực của tham số1 Thế giới lập trìnhLập trình hướng cấu trúcTrong giai đoạn đầu tiên của ngôn ngữ lập trình, một chương trình được chấp nhận nếu như nó thực hiện đúng công việc. Người ta không chú ý đến phương pháp thiết kế và hiện thực chương trình. Vào khoảng giữa thập niên 60, khi mà công việc máy tính thực hiện trở nên phức tạp, chương trình đòi hỏi phải được viết hiệu quả hơn để tiện cho việc dùng lại và phân chia công việc theo nhóm. Điều này dẫn đến sự ra đời của phương pháp lập trình mới là lập trình hướng cấu trúc.Lập trình hướng cấu trúc chia chương trình thành những phân hệ (module) nhỏ hơn để giải quyết một chức năng nào đó.2 Thế giới lập trìnhLập trình hướng cấu trúc (tiếp theo) Một ứng dụng thường được hình thành từ tập hợp các module tương tác với nhau. Sự kết hợp giữa các module này được điều khiển bằng module Main.Module1Module2Module3Main Program3 Thế giới lập trìnhLập trình hướng cấu trúc (tiếp theo)Lưu đồ sau đây minh họa lập trình hướng cấu trúc.4 Thế giới lập trìnhLập trình hướng cấu trúc (tiếp theo)Các module trong lập trình hướng cấu trúc làThủ tục (procedure)Hàm (function)5 Thế giới lập trìnhThủ tục (Procedure)Thủ tục là tập hợp các câu lệnh thực hiện một công việc nhất định.Trong lập trình hướng cấu trúc, thủ tục là một trong những cách hiện thực các module.Cách làm việc của thủ tục được hiện thực theo cơ chế gọi thủ tục và trả giá trị về:Thủ tục được gọi.Các câu lệnh bên trong thủ tục được thực thiDòng điều khiển sẽ chuyển về chương trình gọi thủ tục.6 Thế giới lập trìnhKhai báo, hiện thực và gọi thủ tụcThủ tục cần phải được khai báo trước khi nó được gọi thực thi. Thủ tục được khai báo bằng cú pháp như sau:	procedure Thủ tục được hiện thực như sau:	procedure 	begin	//Các câu lệnh của thủ tục	endGọi thủ tục: call 7 Thế giới lập trìnhThủ tục có tham số (parameter)Tham số được xem như cầu nối giữa thủ tục và chương trình gọi.Tham số bao gồm dữ liệu được dùng (dữ liệu vào) và dữ liệu xử lý (dữ liệu ra) của thủ tục.Tham số có thể là biến kiểu số hoặc kiểu chuỗi.Tham số được dùng cho hai việc chính:Gởi dữ liệu qua thủ tụcNhận kết quả trả về từ thủ tục.8 Thế giới lập trìnhThủ tục có tham số (Tiếp theo) Thủ tục có tham số được khai báo theo cú pháp sau:	procedure (input , output 	) Ví dụ minh họa: Viết một thủ tục tính điểm trung bình của 3 môn học. Sau đó viết chương trình nhập vào họ tên học viên và điểm của 3 môn học. Hãy cho biết điểm trung bình của học viên này.// Khai báo thủ tụcprocedure AverageScore (input numeric, input numeric, input numeric, output numeric) 9 Thế giới lập trình//Chương trình chính.begin character cStudentName numeric nTest1, nTest2, nTest3, nAverage display “Enter Student Name” accept cStudentName display “Enter scores of Test1” accept nTest1 display “Enter scores of Test2 accept nTest2 display “Enter scores of Test3 accept nTest3 call AverageScore (nTest1, nTest2, nTest3, nAverage) display cStudentName, nAverage end 10 Thế giới lập trình// Hiện thực thủ tục procedure AverageScore (input numeric nTest1, input numeric nTest2, input numeric nTest3, output numeric nAverage) begin nAverage=nTest1+nTest2+nTest3 end 11 Thế giới lập trìnhHàm (function)Hàm là một tập hợp các câu lệnh thực thi một công việc cụ thể. Hàm và thủ tục có cấu trúc giống nhau nên có thể được dùng để thay thế cho nhau.Sự khác nhau giữa hàm và thủ tục là thủ tục không trả về giá trị cho chương trình gọi còn hàm thì trả về giá trị cho chương trình gọi.Cách làm việc của hàm được hiện thực theo cơ chế gọi hàm và trả giá trị về:Hàm được gọi.Các câu lệnh bên trong hàm được thực thiDòng điều khiển sẽ chuyển về chương trình gọi cùng với giá trị trả về của hàm.12 Thế giới lập trìnhKhai báo, hiện thực và gọi hàmHàm phải được khai báo trước khi gọi. Cú pháp khai báo hàm như sau: 	function Hàm được hiện thực giống như thủ tục, chỉ có sự khác biệt là câu lệnh cuối cùng của hàm là câu lệnh trả giá trị về cho chương trình gọi. Cú pháp của hiện thực hàm như sau:function begin	//the function statements	return // The function returns some valueEnd13 Thế giới lập trìnhKhai báo, hiện thực và gọi hàm (tiếp theo)Hàm sau khi đã khai báo và hiện thực có thể được sử dụng trong chương trình. Để dùng hàm thì ta dùng câu lệnh gọi hàm và câu lệnh này có cú pháp như sau: 	call .14 Thế giới lập trìnhTham số của hàmTham số của hàm đóng vai trò cầu nối giữa hàm và chương trình gọi.Hàm nhận dữ liệu từ chương trình gọi thông qua tham số. Nếu hàm có nhiều tham số thì giữa các tham số này được phân cách bằng dấu phảy.Không giống như thủ tục, tham số của hàm thường được dùng để nhận dữ liệu vào của hàm. Dữ liệu ra thường được trả về qua câu lệnh return.Ví dụ minh họa: Viết một hàm nhân 2 số. Sau đó viết chương trình nhập vào 2 số và cho biết tích của 2 số đó.15 Thế giới lập trình// Hàm nhân 2 sốfunction ProductOfNumbers(numeric nNum1, nNum2) begin numeric nNumber3 nNumber3= nNum1*nNum2 return nNumber3 end //Chương trình chínhbegin numeric nNumber1, nNnumber2, nResultdisplay “Enter the first number” accept nNumber1 display “Enter the second number” accept nNumber2 result = call ProductOfNumbers(nNumber1, nNumber2) display result end 16 Thế giới lập trìnhTầm vực của biếnBiến được định nghĩa bên trong hay bên ngòai khối begin và end của chương trình chính, của thủ tục và hàm.Tùy vào nơi biến được khai báo mà biến có thể có tầm vực sử dụng khác nhau. Biến có 2 tầm vực sử dụng:Tầm vực cục bộ (local scope)Tầm vực toàn cục (global scope)17 Thế giới lập trìnhTầm vực cục bộBiến được định nghĩa bên trong khối begin  end của chương trình chính hoặc là thủ tục và hàm có tầm vực cục bộ.Biến có tầm vực cục bộ gọi là biến cục bộ. Khi chương trình đang chạy:Biến cục bộ sẽ được tạo ra khi khối begin  end của chương trình chính hoặc của thủ tục và hàm được chạy.Biến cục bộ sẽ bị hủy đi khi thực thi xong khối begin  end.18 Thế giới lập trìnhVí dụ về tầm vực cục bộ19 Thế giới lập trìnhTầm vực toàn cụcBiến có tầm vực tòan cục có thể được sử dụng bất kỳ nơi đâu trong chương trình. Biến có tầm vực tòan cục được gọi là biến toàn cục.Biến tòan cục được khai báo bên ngòai khối begin  end của chương trình chính và bên ngòai hàm, thủ tục.20 Thế giới lập trìnhVí dụ về tầm vực toàn cục	numeric nScore //Global variable nScore is declared 	character cGrade //Global variable cGrade is declared 	begin 	display “enter your score” 	accept nScore 	call AssignGrade 	end 	procedure AssignGrade 	begin 	if nScore > 80 	begin 	cGrade = “A” //Grade is assigned a value “A” 	display cGrade //Value of Grade is displayed 	end 	end 21 Thế giới lập trìnhTầm vực của tham sốTham số của thủ tục và hàm chỉ được truy xuất bởi chính thủ tục và hàm đó. Điều này ngầm định rằng tham số chính là biến cục bộ của hàm và thủ tục.Tầm vực của tham số có các đặt điểm như sau:Tham số chỉ tồn tại bên trong hàm và thủ tục mà nó được định nghĩa. Tham số không được truy xuất từ bên ngòai hàm và thủ tục.Giá trị của tham số được lưu giữ trong quá trình hàm và thủ tục được thực thi.Giá trị của tham số được khởi động lại mỗi lần hàm và thủ tục được gọi.22 Thế giới lập trìnhVí dụ về tầm vực của tham sốbegin 	call FindGreater(20,30) 	display number1 //Lỗi vì không truy xuất được number1end procedure FindGreater (numeric number1, numeric number2) begin 	if number1>number2 	display “number1 is greater” 	if number2>number1 	display “number2 is greater” 	else 	display “both numbers are equal” end 23 Thế giới lập trìnhTóm tắtTrong bài này các bạn đã được học:Lập trình hướng cấu trúc là chia chương trình thành những module nhỏ hơn gọi là hàm và thủ tục.Thủ tục là một tập hợp các câu lệnh để thực thi một công việc cụ thể nào đó.Tham số nhập và tham số xuất dùng được dùng trong thủ tục để nhận giá trị truyền vào và giá trị trả về của thủ tục.Hàm là một tập hợp các câu lệnh để thực thi một công việc cụ thể nào đó.24 Thế giới lập trìnhTóm tắt (Tiếp theo)Thủ tục không trả về giá trị cho chương trình gọi, hàm có trả về giá trị cho chương trình gọi.Sự truy xuất đến các biến trong mã giã được gọi là tầm vực của biến.Biến được phân thành hai loại là biến toàn cục và biến cục bộ.Biến cục bộ được tạo ra khi hàm và thủ tục được gọi và tự động hủy khi hàm và thủ tục thực hiện xong.Biến toàn cục được sử dụng ở mọi nơi trong chương trình.25 Thế giới lập trìnhTóm tắt (Tiếp theo)Tham số của hàm và thủ tục thì chỉ được truy xuất bên trong hàm và thủ tục đó.Tham số của hàm và thủ tục được khởi động trị mỗi lần hàm và thủ tục được gọi. 26 Thế giới lập trìnhBài tậpBài 1: Viết một hàm cho biết số lớn nhất trong 3 số. Sau đó viết chương trình nhập vào 3 số và xuất ra số lớn nhất trong 3 số đó.Bài 2: Viết một thủ tục chấp nhận điểm trung bình và họ tên học viên và xuất ra màn hình cho biết học viên đó có kết quả học tập đạt loại gì? Bài 3: Viết một hàm tính n giai thừa. Sau đó viết chương trình cho nhập vào số n và tính n giai thừa sử dụng hàm đã viết.27 Thế giới lập trình

File đính kèm:

  • pptFOP_Lesson5.ppt
Bài giảng liên quan