=> ngôn ngữ lập trình bậc cao cung cấp khả năng xây dựng các chương trình con dạng tổng quát “đại diện” cho nhiều đoạn lệnh tương tự nhau. Ví dụ: tính luỹ thừa Luythua = x k[r]
Trang 2CHƯƠNG VI.
CHƯƠNG TRÌNH CON VÀ LẬP
TRÌNH CÓ CẤU TRÚC
BÀI 17
CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI
Trang 3BÀI TOÁN MỞ ĐẦU
Xét bài toán tính tổng các
lũy thừa Tluythua = a n + b m + c p + d q
Để giải quyết bài toán này ta nên làm như thế nào?
Chia bài toán thành 4 bài toán nhỏ hơn
Trang 4- Quá trình chia nhỏ bài toán thành các bài toán nhỏ hơn gọi là quá trình làm “mịn” bài toán
- Khi lập trình giải bài toán trên
máy tính ta có thể phân chia
chương trình chính thành các
khối lệnh Mỗi khối lệnh xây dựng thành chương trình con giải 1 bài
toán nào đó.
=> Chương trình chính được xây
dựng từ các chương trình con.
Trang 5Quan sát chương trình SGK trang 92
Trang 6Chương trình trên có những khối lệnh nào được viết tương
tự nhau ?
Trang 7=> ngôn ngữ lập trình bậc cao cung cấp khả năng xây dựng các chương trình con dạng tổng quát “đại diện” cho nhiều đoạn lệnh tương tự nhau
Ví dụ: tính luỹ thừa
Luythua = x k
Trong đó Luythua và x là giá trị kiểu thực
k thuộc kiểu nguyên
Đây là chương trình con được đặt tên là
Luythua(x,k)
Nhận xét: trong chương trình có 4 đoạn lệnh tương tự nhau, việc lặp lại những đoạn lệnh tương tự nhau làm cho chương trình vừa dài vừa khó theo dõi.
Trang 8Luythua(a,n) Luythua(b,m)
Luythua(c,p)
Luythua(d,q)
Trang 9Quan sát chương trình sau khi đã cài đặt
chương trình con
Đây là 1 chương trình con
Trang 10Ch ơng trình con là một dãy lệnh mô tả một số thao tác nhất định và có thể đ ợc thực hiện (đ ợc gọi) từ nhiều vị trí trong ch ơng trình
Trang 11Lîi Ých cña viÖc sö dông ch ¬ng tr×nh con.
Tránh việc phải lặp đi lặp lại cùng một dãy lệnh
Hỗ trợ việc thực hiện các chương trình lớn
Phục vụ cho quá trình trừu tượng hóa
Mở rộng khả năng ngôn ngữ
Thuận tiện cho việc phát triển và nâng cấp
chương trình